Matplotlib 中具有独立缩放的多个重叠图
我目前有多次调用 matplotlib.pylab.plot 的代码,以在同一屏幕上显示多组数据,并且考虑到所有绘图,Matplotlib 将每组数据缩放到全局最小值和最大值。 有没有办法要求它独立缩放每个图,以达到该特定图的最小值和最大值?
I currently have code that calls matplotlib.pylab.plot
multiple times to display multiple sets of data on the same screen, and Matplotlib scales each to the global min and max, considering all plots. Is there a way to ask it to scale each plot independently, to the min and max of that particular plot?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
对此没有直接支持,但这里有一些来自 邮件列表发布的代码 说明了两个独立的垂直轴:
There's no direct support for this, but here's some code from a mailing list posting that illlustrates two independent vertical axes:
这就是创建单个图 (add_subplot(1,1,1)) 并限制 y 轴比例的方法。
This is how you create a single plot (add_subplot(1,1,1)) and limit the scale on the y-axes.
我需要这样的东西,但想创建一个示例,您可以将其复制并粘贴到交互式 shell 中并查看它。 这里适合那些需要有效解决方案的人:已
在 python 2.7.6、numpy 1.8.1、matpotlib 1.3.1 中测试并工作。 我将继续使用它,寻找一种巧妙的方法来处理重叠日期图。 我会发回我的发现。
I need something like this but wanted to create an example that you can copy and paste into the interactive shell and take a look at it. Here it is for those of you requiring a working solution:
Tested and works in python 2.7.6, numpy 1.8.1, matpotlib 1.3.1. I'm going to continue playing with it, looking for a neat way to work with overlaying date plots. I'll post back my findings.
这是一个使用日期图的解决方案,我认为它是使用 twinx() 添加第二个 y 轴的简写的最优化解决方案。
从文档中,matplotlib.pyplot.twinx(ax=None)
创建共享 x 轴的第二个轴。 新轴将覆盖 ax (如果 ax 为 None,则覆盖当前轴)。 ax2 的刻度将放置在右侧,并返回 ax2 实例。 更多信息请此处。
Here is a solution using date plots, and I think its the most optimized solution using twinx() a short hand for adding a second y axis.
From the docs, matplotlib.pyplot.twinx(ax=None)
Make a second axes that shares the x-axis. The new axes will overlay ax (or the current axes if ax is None). The ticks for ax2 will be placed on the right, and the ax2 instance is returned. More here.