我正在尝试使用 mpl_toolkits.axes_grid1 中的 host_subplot 绘制一个带有两个 y 轴的图,其中一个是对数的,一个是线性的。该图看起来不错,除了辅助 y 轴(右)的次要刻度也显示在图内部的主要 y 轴(左)上。
import matplotlib.pyplot as plt
from mpl_toolkits.axes_grid1 import host_subplot
import mpl_toolkits.axisartist as AA
host = host_subplot(111)
host.set_yticks(np.arange(-12, -3, 1.0))
par1 = host.twinx()
par1.set_ylim( 2.7040e+3, 1.3552e+7)
par1.set_yscale('log')
minorLocator_x1 = MultipleLocator(0.3333)
minorLocator_y1 = MultipleLocator(0.5)
host.xaxis.set_minor_locator(minorLocator_x1)
host.yaxis.set_minor_locator(minorLocator_y2)
我可以使用以下方法修复镜像次对数轴刻度:
host = host_subplot(111, axes_class=AA.Axes)
但是,这会产生另一个问题,即 x 轴刻度标签显示在图的内部,就像 x 轴标签一样。
关于如何规避这些问题的任何想法?