我在matplotlib中创建一个热图,其中x和y轴上是度量的一些参数,颜色表示度量的值。Matplotlib根据值的索引自动给出轴的刻度。例如,如果在x轴上,我在50个不同的值测量,滴答将从0到50。但是,这个参数的实际值是从-30到80,我想要matplotlib根据这个最小值和最大值创建滴答。
我试过使用set_xticks,但这需要滴答的位置以及它们的标签。我在想,我应该可以给matplotlib的最小值为-34,最大值为67,并让它在适当的位置创建漂亮的滴答,但我一直无法找到方法。
发布于 2015-02-11 12:29:35
在matplotlib网站上挖掘了一些示例之后,我在imshow
中找到了一个名为extent
的选项,在这个选项中,您可以用自己的最小和最大两个轴的值替换默认的基于零的坐标。
发布于 2015-02-11 11:08:51
在这种情况下,pyplot.xlim()或pyplot.figure.set_xlim()不能工作吗?就说这样的话:
import matplotlib.pyplot as plt
plt.xlim(-30,80)
plt.ylim(0,100) #Or whatever
据我所知,set_xticks函数太复杂了。如果你想把一个数字系列和一系列字母联系起来,你可以用它来指定什么作为你的勾号标签等等。例如:
x = [-8,-6,-4,-2,0,2,4,6,8]
labels = ['K2','K4','K6','K8','M0','M2','M4','M6','M8']
plt.xticks(x, labels)
是我个人用来把整数转换成恒星光谱类型(这是相关的,因为我是天文学家;p)。
希望这能有所帮助。
`
https://stackoverflow.com/questions/28461979
复制相似问题