[英]Color 2D Grid with values from separate 2D array
我有两个数据数组,x和y。 我想在散点图y与x上作图。 x的范围是[0,3],y的范围是[-3,3]。 然后,我想将此区域网格化为n×m的网格,并基于单独的2D numpy数组的值(与网格相同的形状,n×m)对每个区域中的点着色。 因此,应该根据colorarr [0] [0]的值对图的左上角的网格单元进行着色。 有人对此有任何建议吗? 我到目前为止发现的最接近的是:
不幸的是,这只是显示了色差,而不是我想可视化的2D区域。
谢谢!
我认为您想要的是二维直方图。 Matplotlib.pyplot使此操作非常容易。
import numpy as np
import matplotlib.pyplot as plt
# Make some points
npoints = 500
x = np.random.uniform(low=0, high=3, size=npoints)
y = np.random.uniform(low=-3, high=3, size=npoints)
# Make the plot
plt.hist2d(x, y)
plt.colorbar()
plt.show()
您可以从刚才的颜色阵列通过设置做到这一点extent
和aspect
的关键字imshow
import matplotlib as plt
import numpy as np
zval = np.random.rand(100, 100)
plt.imshow(zvals, extent=[0,3,-3,3], aspect="auto")
plt.show()
您得到的是zval
数组,仅“压缩”在[0:3, -3:3]
范围内。 只需在imshow
绘制zval
数组即可说服自己。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.