【问题标题】:How matplotlib show obvious changes?matplotlib 如何显示明显的变化?
【发布时间】:2015-11-25 01:40:32
【问题描述】:

我想用 matplotlib 画一张图。 y值很大,但是y的变化太小。例如,y = 1270000,但是只有一个变化范围[-10,10]。如何显示y的明显变化?图片无法显示变化。 enter image description here

【问题讨论】:

  • 那么整个函数或所有数据都在1270000 +/- 10范围内(例如)?
  • Matplotlib 正在尝试做你需要的事情。顶部的数字表示 y 比例从 0 + 1,269,990 变为 20+1,269,990。可能还有其他问题 - 你能显示一些代码吗?
  • 您可以根据需要禁用缩放/偏移,并将轴缩放到适当的比例;请参阅documentation 或例如this 发帖
  • 是的。所有数据都在范围内。我会更加耐心地阅读文档。

标签: python matplotlib


【解决方案1】:

我会选择这样的:

import numpy as np
import matplotlib.pylab as pl

x = np.arange(100)
y = np.random.randint(1270000-10, 1270000+10, x.size)

pl.figure()
pl.subplot(121)
pl.plot(x,y)
pl.ylim(y.min()-1, y.max()+1)

pl.subplot(122)
pl.plot(x,y)
pl.ylim(y.min()-1, y.max()+1)
ax=pl.gca()
ax.get_yaxis().get_major_formatter().set_useOffset(False)

最后一行禁用了偏移量,这(在我看来)创建了一个更好的可读性图形。我不想用科学计数法翻译一个数字加上该数字的偏移量,以便能够读取图中某个点的值。

【讨论】:

  • 谢谢,第二个对我帮助很大。
猜你喜欢
  • 2020-10-15
  • 2012-01-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-02
  • 2022-08-14
  • 2015-05-22
  • 2021-07-01
相关资源
最近更新 更多