绘制对数轴

新手上路,请多包涵

我想使用 matplotlib 绘制一个具有一个对数轴的图形。

我一直在阅读文档,但无法弄清楚语法。我知道它可能很简单,比如 'scale=linear' 在情节参数中,但我似乎无法正确理解

示例程序:

 import pylab
import matplotlib.pyplot as plt
a = [pow(10, i) for i in range(10)]
fig = plt.figure()
ax = fig.add_subplot(2, 1, 1)

line, = ax.plot(a, color='blue', lw=2)
pylab.show()

原文由 Jim 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 299
1 个回答

您可以使用 Axes.set_yscale 方法。这允许您在创建 Axes 对象后更改比例。这也将允许您构建一个控件,让用户在需要时选择比例。

要添加的相关行是:

 ax.set_yscale('log')

您可以使用 'linear' 切换回线性刻度。您的代码如下所示:

 import pylab
import matplotlib.pyplot as plt
a = [pow(10, i) for i in range(10)]
fig = plt.figure()
ax = fig.add_subplot(2, 1, 1)

line, = ax.plot(a, color='blue', lw=2)

ax.set_yscale('log')

pylab.show()

结果图表

原文由 Mathieu 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题