2014-06-28 89 views
-1

我有3组值。这就像我有x-y坐标平面,它构成了前两组值。而且我已将平面区域划分为单位大小或特定大小的小方块。然后我有另一个二维数组,其中包含值对应的每个正方形或小区域。现在Matplotlib,作为颜色条的颜色的第三组值

,问题

我可以使用彩条,但X轴和Y轴分别如何列和行索引绘制2-d数组作为色点!而不是我想要显示x和y坐标。我尝试了很多搜索,但没有得到解决方案。

它与this类似。这只是我想要我的一组x-y坐标值,而不是显示的行和列值。

请帮忙。如果需要通过评论而不是downvoting提出改进建议。这是非常令人沮丧的。

编辑:

以下提供的答案后,我得到这个 enter image description here

相反,我应该有这样的人物。当然这些轴线与前面的图形不同,下面不同。 enter image description here

+0

这不就是['pcolor(X,Y,C)'](http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.pcolor)吗? –

+0

你能举个例子吗?我真的不喜欢写在你提供的链接中的文档..请 – MycrofD

+0

我不能在评论中给出一个例子。但是,如果您在问题中提供了'X','Y'和'C'的示例,并且具体描述了这些值的期望结果,那么我或其他人可能会提供更自信的答案。 –

回答

1

如果你想拥有类似imshow例子是你链接到,但不同的坐标轴,您可能需要使用extent关键字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() 

这种方式,你可以创建“像素“其大小是你想要什么:

enter image description here

当然,你可以画出更多的信息到同巴解组织如果你想通过使用plot或其他东西。

image这是一个标量数组,它的着色由cmap定义,但如果您想做更有趣的着色,它也可能是RGB或RGBA值的数组。例如:

How to create colormap of confidence estimates for k-Nearest Neighbor Classification

如果你想在你的地图透明区域,把nan值到image

+0

几乎得到我所需要的.. 但现在,y轴缩小。如何延长它? 我的意思是x从4变化到22.而y从-75到-70.5变化。因此,这个概率看起来像一个矩形,它的图形沿垂直轴即y轴挤压。 – MycrofD

+0

@MycrofD:'extent'关键字在绘图区域坐标中给出图像的大小。记得给plt.axis('normal')',然后你可以通过'plt.axis([ - 100,100,-50,50])'或者你想要的任何范围来缩放你想要的轴范围有。 – DrV

+0

非常感谢。 thnx给你和@Lev Levitsky做出如此快速的回应。 :) – MycrofD