A continuing battle with Mathematica involves graphics heavy with text labels. For example, the following expression renders so that the "Lifecycle properties..."
node completely hides the arrow from the "NonFunctional"
node. Any options to space these nodes apart?
TreePlot[{
"Software Engr" -> "Specification",
"Software Engr" -> "Implementation",
"Specification" -> "Functional",
"Specification" -> "NonFunctional",
"Functional" -> Style[ "What the system \n must do", Bold],
"NonFunctional" ->
Column[{ Style["Lifecycle properties:", Bold], "Interoperability",
"Usability", "Scalability", "Safety", "Expandability",
"Flexibility", "Robustness", "Modularity"}]
},
Top, "Software Engr",
VertexLabeling -> True,
PlotStyle -> {FontFamily -> "Helvetica", FontSize -> 14},
EdgeRenderingFunction -> ({GrayLevel[0.5], Arrow[#1, 0.2]} &)
]
A related issue is that although Export
renders a PDF of this exactly as it appears in notebook, right-clicking on the cell and using "Save Selection As..."
makes the above mentioned nodes overlap. It's a mess. Imagine dealing with larger graphs
ImageSize
option can help to spread out the labels. $\endgroup$ – Vitaliy Kaurov Jun 4 '12 at 3:10