Вот два возможных обходных пути.
Увеличьте размер вершины и поместите метки внутри вершины. Конечно, это также зависит от длины меток, но для коротких меток это работает хорошо, тогда как в приведенном выше примере отсекается любая метка из более чем одного символа для вершины 1.
ex:
Table[Graph[{1 -> 2, 2 -> 3, 3 -> 1}, VertexSize -> 0.3,
VertexLabels -> Table[i ->
Placed["vertex" <> ToString[i], p], {i, 3}],
VertexShapeFunction -> "Square", PlotLabel -> p],
{p, {Left, Top, Right, Bottom, Center}}]
Используйте всплывающие подсказки для хранения меток вместо их отображения на графике. [Редактировать: Центр, вероятно, выглядит лучше всего, а затем вы можете переносить метки, помещая \n в свою строку, если вам нужно, но опять же, зависит от длины метки.]
ex:
Graph[{1 -> 2, 2 -> 3, 3 -> 1}, VertexLabels -> Placed["Name", Tooltip]]
Хотя это не позволяет вам видеть все метки одновременно, у вас никогда не будет обрезки.
person
JeremyKun
schedule
25.05.2011
ImagePadding
для каждого из:Automatic
,Full
,All
, пожалуйста? - person Mr.Wizard   schedule 09.05.2011Automatic
.Full
иAll
дают одинаковый результат. - person Szabolcs   schedule 09.05.2011Graph
? Что вы получите, если сделаетеg = Graph[ ... ]
, а затемg[[1]]
? - person Mr.Wizard   schedule 09.05.2011Automatic
давать разные результаты, даже если он явно указан вOptions[someSymbol]
? На самом деле по умолчанию здесь стоитAll
, я ошибся. СтруктураGraph
object почти такая же, как и то, что мы вводим в качестве входных данных, приведенное к канонической (?) форме. В данном случаеGraph[{1, 2, 3}, {DirectedEdge[1, 2], DirectedEdge[2, 3], DirectedEdge[3, 1]}, {VertexLabels -> {"Name"}}]
- person Szabolcs   schedule 09.05.2011Part
, увидит вGraph
, однако из-за некоторых ошибок сGraph
я полагаю, что Mathematica внутри использует более низкоуровневое представление.) - person Szabolcs   schedule 09.05.2011Graph
и выбрать параметры макета и т. д.) Однако я не слишком часто использую интерактивные функции. Видимые этикетки гораздо важнее. - person Szabolcs   schedule 09.05.2011GraphPlot[ Graph[...] ]
? - person Mr.Wizard   schedule 09.05.2011GraphPlot
поддерживаетGraph
в Mma 8. Строит его как обычно (т.е. вывод в стиле GraphPlot, а не интерактивный объект в стиле Graph). Итак, теперь у нас есть 3 разных полу-(в?)-совместимых способа обработки графов...Graph
,GraphPlot
иGraphUtilities
пакет и Combinatorica. - person Szabolcs   schedule 09.05.2011Graph
на самом деле атомарный,Part
на нем не работает, аAtomQ
возвращаетTrue
. См. также stackoverflow.com/questions/4301833/ - person Szabolcs   schedule 09.05.2011Graph
опцииVertexLabels
довольно часто используютImagePadding
. Для меня это говорит о том, что WRI знает о проблеме, и это официальный обходной путь. - person Sjoerd C. de Vries   schedule 09.05.2011