6
是否可以绘制两个独立的y轴,使刻度线对齐?matplotlib align twin twin刻度标记
下面是一个解决方案的一个例子。我已经使用twinx
加倍了y轴,但刻度线未对齐,网格线在图上形成了一个尴尬的图案。有没有办法让刻度线共享相同的位置,但是对应于不同的y值?在下面的示例中,我希望左侧的刻度标记5与右侧的刻度标记6处于同一垂直位置。
import numpy as np
a = np.random.normal(10, 3, size=20)
b = np.random.normal(20, 5, size=40)
fig, ax1 = plt.subplots()
ax2 = ax1.twinx()
ax1.hist(a)
ax2.hist(b)
此工作的总点是使网格线为两个轴重叠。
由于边界总是由两个数字定义(除非未定义),下面也已经限定的轴线的边界之间产生5个点。 set_yticks(np.linspace(* ax1.get_ybound(),5)'。 –