我想绘制一个网格,其中网格中的每个节点都由一个点绘制,带有特定的颜色代码(取自存储在节点中的向量)。在
{1美元^
这里的网格大小取决于我运行的模拟的大小。我还没有弄清楚画布大小和标记大小之间的关系。现在我使用以下公式:
markersize = (figsize*figsize*dpi*dpi)/(xdim*ydim)
plt.scatter(X, Y, s=markersize/3, marker='s', c=Z, cmap=cm.rainbow)
plt.show()
即I平方sigsize和dpi(分别使用15和80),然后除以网格的维数。最后我把这个除以3,因为我发现这个有用。在
但我还没弄清楚如何分析得出正确的标记大小。我想要的是一个网格,其中每个正方形都尽可能多地使用一个空间,但不会“侵犯”其他节点的空间,因此标记重叠。在
据我所知,尺寸是用英寸表示的。dpi是每英寸-dots,而markersize以-points指定。如果点与点相同,则每个轴上的点的dpifigsize数量。xdimydim是网格中的节点数量。除以pow(dpifigsize,2)/xdimydim应该可以得到每个节点的点数,以及我认为的每个标记的正确大小。但这让标记太大了。我把它除以3,它对我通常使用的尺码有点管用,但不是全部。(我猜一个点和一个点是不一样的,但这是什么关系?)在
我怎样才能得出正确的答案呢?理想情况下,我想要一张非常精细的照片,在那里我可以放大某些区域,以获得更精细的颜色差别。在
如果要精确控制标记大小并使其与图形保持比例,可以使用patch代替常规标记。下面是一个例子:
你也可以用矩形代替圆。在
相关问题 更多 >
编程相关推荐