2017-04-04 71 views
0

如何调整图表的x轴,以便某些刻度在某个距离处间隔开,而其他刻度则间隔较宽?如何在单个x轴内改变不同的xtick距离?

例如,在下面的图中,我希望1-200 tick与201-300之间的距离相隔两倍(即当前距离的两倍),而其余的xticks保留间距因为他们现在是。

enter image description here

回答

1

在图中的轴是线性的。这意味着轴上绘制的任何两个值之间的距离与它们各自的差异成比例。刻度表行为相同,并且与轴刻度绑定。例如。 1和2处的两个蜱在0.5和1.5处相距两个蜱。

您当然可以按照自己想要的方式重新标记刻度,并且可以根据需要使用ax.set_xticks()ax.set_xticklabels()来定位它们。

enter image description here

然而,这并不改变数据间距。所以为了在两个数据点之间有更大的空间,数据本身需要进一步分开,例如,

ax.plot([4,6,7,8],[23,24,23,24], marker="o") 
ax.set_xticks([4,6,7,8]) 

enter image description here

使用ax.set_ticklabels现在允许标签设置为所需的任何东西。