我如何翻转matplotlib阴谋的起源是在左上角的 - 而不是默认的左下?我正在使用matplotlib.pylab.plot生成图(尽管如果有另一个更灵活的绘图程序,请让我知道)。Matplotlib coord。 SYS原点到左上
我想找MATLAB命令的当量:轴IJ;
另外,我花了几个小时的冲浪matplotlib帮助和谷歌,但还没有想出答案。关于我在哪里可以找到答案的一些信息也会有帮助。
我如何翻转matplotlib阴谋的起源是在左上角的 - 而不是默认的左下?我正在使用matplotlib.pylab.plot生成图(尽管如果有另一个更灵活的绘图程序,请让我知道)。Matplotlib coord。 SYS原点到左上
我想找MATLAB命令的当量:轴IJ;
另外,我花了几个小时的冲浪matplotlib帮助和谷歌,但还没有想出答案。关于我在哪里可以找到答案的一些信息也会有帮助。
对于图像或等值线图,你可以使用关键字origin = None | 'lower' | 'upper'
和线图,你可以设置高后低的ylimits。
from pylab import *
A = arange(25)/25.
A = A.reshape((5,5))
figure()
imshow(A, interpolation='nearest', origin='lower')
figure()
imshow(A, interpolation='nearest')
d = arange(5)
figure()
plot(d)
ylim(5, 0)
show()
axis ij
只是使y轴向上而不是向下的增加,对不对?如果是这样,那么matplotlib.axes.invert_yaxis()
可能是你所需要的 - 但我现在无法测试。
如果不工作,我发现a mailing post表明
setp(gca(), 'ylim', reversed(getp(gca(), 'ylim')))
可能做你想要像axis ij
什么。
我无法让自己invert_yaxis()工作。如果确实如此,那将是理想的。从我可以拼凑在一起,setp命令应该工作,但“反转”返回一个迭代器。我无法让它返回一个序列,尽管我对这个还是比较新的。所以它可能很容易。 – Nate 2009-08-31 18:35:06
以下是实现这一
ax=pylab.gca()
ax.set_ylim(ax.get_ylim()[::-1])
最简单的方法基本的方法是使用:
plt.gca().invert_yaxis()
产地仅适用于imshow
。
当把卫星图像上的地图与Cartopy放在一起时,这个功能非常棒。请注意,至少在我的用例中,这必须在'imshow()'之后运行。谢谢! – kevinmicke 2018-02-14 23:24:06
这
plt.ylim(max(plt.ylim()), min(plt.ylim()))
具有优于该
plt.gca().invert_yaxis()
是,如果你是在交互模式下,你反复用更新的数据绘制相同的图(也许并具有后断点该图)y轴不会每次都保持反转。
用“ylim([y1,y2])”或“轴([x1,x2,y1,y2])”直接设置轴极限值“。这不是完全通用的,但我相信我可以想出一些通用的东西。也许上面提到的setp命令。 感谢您的帮助! – Nate 2009-08-31 18:38:43
关键字技巧解决了我的问题。 +1 – heltonbiker 2011-11-23 22:36:52