2
|
3139 Views
|
2 Replies
|
6 Total Likes
View groups...
Share

# Using SetPropery and VertexSize

Posted 11 years ago
 I have two loosely related questions about SetProperty and VertexSize:Suppose we have a largeish graph:g=RandomGraph[BarabasiAlbertGraphDistribution[100,1]]1. Why does SetProperty[g, VertexSize -> Large] make the vertices smaller than default instead of larger?  This is a bit counterintuitive.  I can work around it by specifying a number, e.g. VertexSize -> 10.  However, the actual size will still depend on the size of the graph (if we have a graph with 1000 nodes instead of 100, it'll be different).What I'm aiming for is setting the vertex size in a general way so that it'll be a reasonable factor bigger than the default regardless of the size of the graph.  The application is highlighting a particular vertex, e.g. SetProperty[g, VertexSize -> {10 -> Large}].  I don't know how to choose a vertex size value that'll work for a graph of any size.  For example making the highlighted vertex precisely twice bigger than the rest would probably work well.(I know I can highlight by colouring, but this is in addition to that.)2. How can I set the VertexSize when using a predefined graph style?  For example the following doesn't work:SetProperty[ RandomGraph[BarabasiAlbertGraphDistribution[100, 1],   GraphStyle -> "LargeNetwork"], VertexSize -> {10 -> 5} ]
2 Replies
Sort By:
Posted 11 years ago
 Consider a not-styled graph:g = RandomGraph[BarabasiAlbertGraphDistribution[100, 1]]Change all vertex sizes relatively to plot diagonalSetProperty[g, VertexSize -> {"Scaled", .02}]Change single vertex color and size relatively to plot diagonalSetProperty[g, {VertexSize -> {10 -> {"Scaled", .04}},  VertexStyle -> {10 -> Red}}]Now consider styled graphh = RandomGraph[BarabasiAlbertGraphDistribution[100, 1], GraphStyle -> "LargeNetwork"]Change single vertex size relatively to plot diagonalSetProperty[h, {VertexShapeFunction -> {10 -> "Circle"}, VertexSize -> {10 -> {"Scaled", .04}}}]Use another method and add colorSetProperty[h, VertexStyle -> {10 -> {Red, PointSize[.04]}}]
Posted 11 years ago
 Great tips Vitaliy, I don't know how I could have missed some of those basic options (probably too sleepy when posting).  I tried VertexSize -> Scaled[...] but it typically gives ellipses instead of circles becaues the plot aspect ratio is not square.