Nat*_*ate 15 python axes matplotlib
如何将matplotlib图的原点翻转到左上角 - 而不是默认的左下角?我正在使用matplotlib.pylab.plot来生成绘图(尽管如果有另一个绘图例程更灵活,请告诉我).
我正在寻找相当于matlab的命令:axis ij;
此外,我花了几个小时冲浪matplotlib帮助和谷歌,但没有得到答案.关于我可以在哪里找到答案的一些信息也会有所帮助.
G M*_*G M 15
最简单的方法是使用:
plt.gca().invert_yaxis()
Run Code Online (Sandbox Code Playgroud)
绘制图像后.Origin仅适用于imshow.
Mar*_*off 12
axis ij只是让y轴向下而不是向上增加,对吧?如果是这样,那么matplotlib.axes.invert_yaxis()可能就是你所需要的 - 但我现在无法测试它.
如果不工作,我发现了一个邮件后提示
setp(gca(), 'ylim', reversed(getp(gca(), 'ylim')))
Run Code Online (Sandbox Code Playgroud)
可能会做你想要的东西axis ij.
对于图像或等高线图,您可以使用关键字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()
Run Code Online (Sandbox Code Playgroud)
小智 7
以下是实现此目的的基本方法
ax=pylab.gca()
ax.set_ylim(ax.get_ylim()[::-1])
Run Code Online (Sandbox Code Playgroud)
这
plt.ylim(max(plt.ylim()), min(plt.ylim()))
Run Code Online (Sandbox Code Playgroud)
比这个有优势
plt.gca().invert_yaxis()
Run Code Online (Sandbox Code Playgroud)
如果您处于交互模式并且重复绘制相同的图(可能使用更新的数据并在图后有一个断点),则 y 轴不会每次都保持反转。
| 归档时间: |
|
| 查看次数: |
18720 次 |
| 最近记录: |