【发布时间】:2020-02-08 21:26:33
【问题描述】:
我的程序在 5 秒内最多可以生成 2000000 个点,所以我的速度没有问题。现在我正在使用 matplotlib.pyplot.scatter 将我的所有点分散在我的图表上。对于s=1,它给了我小圆圈,但不够小,因为它没有显示复杂的图案。当我使用s=0.1 时,它给了我这个奇怪的标记形状:
尽管我缩小了尺寸,但这会使标记变大。我已经在整个互联网上进行了搜索,包括堆栈溢出,但他们没有说明如何进一步最小化大小。不幸的是,我必须展示所有的点,而不能只展示它们的随机样本。
我得出的结论是,matplotlib 是为小样本点制作的,而不是为了绘制数百万个点。但是,如果可以使尺寸更小,请告诉我。
无论如何,就我的观点而言,我将所有 x 值按顺序排列在一个数组中,并将所有 y 值按顺序排列在另一个数组中。有人可以建议一个python中的图形包,我可以用它来绘制所有点的大小,因为当我绘制这些点时,它现在只是变成了一大块颜色,而不是形状中形成的复杂设计他们应该是。
提前感谢您的帮助!
编辑:我用来分散点的代码是:
plt.savefig(rootDir+"b"+str(Nvertices)+"_"+str(xscale)+"_"+str(yscale)+"_"+str(phi)+"_"+str(psi)+"_"+CurrentRun+"_color.png", dpi =600)
编辑:我得到了答案,我添加了linewidths = 0,这大大减小了点的大小,给了我需要的东西。
【问题讨论】:
-
您的问题没有显示任何代码,因此很难猜测您使用的是哪些参数。您可以尝试删除边界线(
lw=0,如果您使用的是plt.scatter)
标签: python matplotlib graphing