如何在 JULIA 中使用 GADFLY 实现直方图绘制的精度
How to achieve precision on histogram plotting with GADFLY in JULIA
我想创建一个直方图,显示图中有多少个不同值的顶点。我使用 Gadfly 以 JULIA 语言绘制此直方图。
p = Gadfly.plot(x=int(array[1:end]), Geom.histogram, Theme(
panel_fill=color("White"),
panel_opacity=0.1,
panel_stroke=color("Blue"),
background_color=color("White")
# width of line
), Guide.ylabel("K core"),
Guide.xlabel("Vertices"))
上面的代码绘制直方图,然后我用另一个函数将它保存为 png 格式。可变数组的内容为[1,1,1,3,3,3,3,3,3,3]
这是我在运行这段代码之后得到的。现在这个例子中的图有 8 个顶点值为 3 和 2 个顶点值为 1,gadfly 给了我上面的直方图。困扰我的是 x 轴。我不知道为什么从 1 到 3 显示值 1,从 3 到 5 显示值 3。我想让它更精确,但不知道如何。我尝试了很多代码的变体和缩写,但我无法让它工作。
我正在寻找的是,在 x 轴上会有值 1 和 3,并且条形不会那么粗,并且看到值是 1 和 3 会更简单。
有什么帮助吗???
尝试解决大约 4 小时,发布问题后 5 分钟内解决 :D
为了更精确,需要做的就是在Geom.histogram[之后的plot函数中添加Scale.x_discrete.
p = Gadfly.plot(x=int(array[1:end]), Geom.histogram, Scale.x_discrete, Theme(
panel_fill=color("White"),
panel_opacity=0.1,
panel_stroke=color("Blue"),
background_color=color("White")
# width of line
), Guide.ylabel("K core"),
Guide.xlabel("Vertices"))
现在情节更容易阅读了。最后一件事是对数组进行排序,以便对 x 轴上的值进行排序。
您可以使用 Guide.xticks
:
plot(x=rand(10), y=rand(10), Geom.line, Guide.xticks(ticks=ticks, orientation=:vertical))
我想创建一个直方图,显示图中有多少个不同值的顶点。我使用 Gadfly 以 JULIA 语言绘制此直方图。
p = Gadfly.plot(x=int(array[1:end]), Geom.histogram, Theme(
panel_fill=color("White"),
panel_opacity=0.1,
panel_stroke=color("Blue"),
background_color=color("White")
# width of line
), Guide.ylabel("K core"),
Guide.xlabel("Vertices"))
上面的代码绘制直方图,然后我用另一个函数将它保存为 png 格式。可变数组的内容为[1,1,1,3,3,3,3,3,3,3]
这是我在运行这段代码之后得到的。现在这个例子中的图有 8 个顶点值为 3 和 2 个顶点值为 1,gadfly 给了我上面的直方图。困扰我的是 x 轴。我不知道为什么从 1 到 3 显示值 1,从 3 到 5 显示值 3。我想让它更精确,但不知道如何。我尝试了很多代码的变体和缩写,但我无法让它工作。
我正在寻找的是,在 x 轴上会有值 1 和 3,并且条形不会那么粗,并且看到值是 1 和 3 会更简单。
有什么帮助吗???
尝试解决大约 4 小时,发布问题后 5 分钟内解决 :D
为了更精确,需要做的就是在Geom.histogram[之后的plot函数中添加Scale.x_discrete.
p = Gadfly.plot(x=int(array[1:end]), Geom.histogram, Scale.x_discrete, Theme(
panel_fill=color("White"),
panel_opacity=0.1,
panel_stroke=color("Blue"),
background_color=color("White")
# width of line
), Guide.ylabel("K core"),
Guide.xlabel("Vertices"))
现在情节更容易阅读了。最后一件事是对数组进行排序,以便对 x 轴上的值进行排序。
您可以使用 Guide.xticks
:
plot(x=rand(10), y=rand(10), Geom.line, Guide.xticks(ticks=ticks, orientation=:vertical))