【发布时间】:2020-09-13 22:29:00
【问题描述】:
我正在尝试将箱线图与线图结合起来。我能够让两种不同的绘图类型一起出现在同一个图形上,并使箱线图位于正确的 x 位置。但是,我想调整 x 刻度,以便定期跨越整个 x 轴。我没有任何运气使用 xlim 和 xticks 来更改刻度位置——我认为箱形图把事情搞砸了。我试过分别叠加图,但我仍然没有任何运气。下面你可以看到我试图实现的代码来覆盖这两个图。
h = [0.39, 0.48, 0.58, 0.66, 0.78, 0.94]
fig, ax1 = plt.subplots()
ax2 = ax1.twinx()
ax1.plot(h, avg00, '--ko', label='GSE')
ax2.boxplot(phi00, widths=0.05, positions=h, showmeans=True)
ax1.set_xticks(np.arange(0.3, 1.1, 0.1))
ax1.set_xlim(0.3,1.0)
ax1.set_ylim(74,79)
ax2.set_ylim(74,79)
ax2.set_yticks([])
ax1.legend()
plt.show()
使用手头的数据创建以下图像: overlayed xy-plot and boxplot
任何帮助将不胜感激。谢谢!!!!
【问题讨论】:
-
您是否尝试过将
ax2.set_xlim和ax2.set_xticks显式设置为与ax1相同的值?我知道你不应该这样做,但是......? -
另外,如果你使用相同的 ylim,为什么还要使用
twinx?
标签: python python-3.x matplotlib plot boxplot