python - 如何在 plt.imshow() 中设置标记大小

标签 python matplotlib imshow spy

我有以下问题: 我想使用颜色图绘制邻接矩阵。现在我想调整标记大小,因为你不能真正 看到图片中的点,因为矩阵真的很大。我怎样才能做到这一点?使用spy(),其工作原理如下。

plt.spy(adj, markersize = 1)

我想要这样的东西:

plt.imshow(adj, cmap = colormap, markersize= 1)

然而,这不起作用。 谢谢

最佳答案

您可以使用散点图,它允许使用 s 参数设置标记大小。

ax.scatter(X,Y,c=z, s=36, marker="s")

比较 spy 图、imshow 和散点图的示例。

import matplotlib.pyplot as plt
import numpy as np

fig, (ax1,ax2,ax3) = plt.subplots(ncols=3, figsize=(8,4))

z = np.random.rand(20, 20)
X,Y = np.meshgrid(np.arange(z.shape[1]),np.arange(z.shape[0]))
z[5] = 0.
z[:, 12] = 0.

ax1.spy(z, markersize=5, precision=0.1, origin="lower")
ax2.imshow(z, origin="lower")
ax3.scatter(X,Y,c=z, s=36, marker="s")
ax3.set_aspect("equal")
ax3.margins(0)

ax1.set_title("spy")
ax2.set_title("imshow")
ax3.set_title("scatter")

plt.show()

enter image description here

关于python - 如何在 plt.imshow() 中设置标记大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45078786/

相关文章:

变量的 Python 字符串编码

python - numpy einsum 的替代品

python - "IndexError: list index out of range"在为 MySQL DB 充电时

python - 如何使用 pyplot.bar 绘制正误差条?

python - 如何创建具有相同像素大小的 python imshow 子图

python - 在 setup.cfg 中设置 basedirlist 并在 make 中设置 PREFIX 指向 virtualenv

python - 如何添加matplotlib轴单位

python - 根据百分位数绘制直方图

python - 在不创建辅助数组的情况下使用 imshow 绘制数组时,将特定颜色分配给数组的值

python - numpy 数组的 imshow 无法按预期使用 Cartopy