3

我想在两边都显示 yaxis。在 matplotlib 1.2 中,我可以使用以下代码:

ax.tick_params(labelright = True)

但是,matplotlib 0.99 中没有tick_paramsAxes 的方法。在 0.99 中有什么简单的方法可以做到这一点吗?Tks

编辑 我得到了这个解决方案,然后是@Brian Cain's

ax2 = ax1.twinx()
ax2.set_yticks(ax1.get_yticks())
ax2.set_yticklabels([t.get_text() for t in ax1.get_yticklabels()])
4

1 回答 1

4

这是每个 Y 轴上具有不同比例的文档的示例。matplotlib如果您愿意,可以使用相同的比例。

import numpy as np
import matplotlib.pyplot as plt

fig = plt.figure()
ax1 = fig.add_subplot(111)
t = np.arange(0.01, 10.0, 0.01)
s1 = np.exp(t)
ax1.plot(t, s1, 'b-')
ax1.set_xlabel('time (s)')
# Make the y-axis label and tick labels match the line color.
ax1.set_ylabel('exp', color='b')
for tl in ax1.get_yticklabels():
    tl.set_color('b')


ax2 = ax1.twinx()
s2 = np.sin(2*np.pi*t)
ax2.plot(t, s2, 'r.')
ax2.set_ylabel('sin', color='r')
for tl in ax2.get_yticklabels():
    tl.set_color('r')
plt.show()

生成的图像

于 2013-07-18T03:26:45.003 回答