我有 3组值。这就像我有x-y坐标平面,它构成了前两组值。我将平面区域划分为单位大小的小方块或特别是某个大小。然后我有另一个二维数组,其中包含与每个方格或小区域对应的值。
现在,问题:
我可以使用颜色条将2-D数组绘制为颜色点,但x轴和y轴分别如何绘制列和行索引!而不是我想要显示x和y坐标。我尝试了很多搜索并没有得到解决方案。
类似于this。只是我想要一组x-y坐标值而不是显示的行和列值。
请帮忙。如果需要通过评论而不是低估来建议改进。这非常令人沮丧。
修改
按照提供的答案后,我得到了这个 。
相反,我应该得到这样的数字。当然,轴与上图不同,而不像下面的那样。
答案 0 :(得分:1)
如果您想要链接到imshow
示例,但使用不同的坐标轴,则可能需要使用extent
的{{1}}关键字:
imshow
通过这种方式,您可以创建"像素"其大小正是您想要的:
当然,如果只想使用import numpy as np
import matplotlib.pyplot as plt
# some random data (10x10)
image = np.random.uniform(size=(10, 10))
plt.figure()
# draw the pixel image
# interpolation='nearest': draw blocky pixels, do not smooth
# cmap=pl.cm.gray: use gray scale colormap (autoscale, no vmin or vmax defined
# origin='lower': draw first row of the array to the bottom if the image
# extent=[-3,3,-10,10]: draw the image so that it covers area (-3,-10)..(3,10)
plt.imshow(image, cmap=plt.cm.gray, interpolation='nearest', origin='lower', extent=[-3,3,-10,10])
# this is needed to make the pixels non-square if needed
plt.axis('normal')
plt.colorbar()
plt.show()
或其他内容,您可以在同一个地块上绘制更多信息。
这里的plot
是标量数组,着色由image
定义,但如果你想进行更高级的着色,它也可能是RGB或RGBA值的数组。例如:
How to create colormap of confidence estimates for k-Nearest Neighbor Classification
如果您想在地图中设置透明区域,请将cmap
值放入nan
。