想要绘制出如下类型坐标轴断开的图,matplotlib中并没有直接可用的API,但是官方给出了一个demo: broken axis.py
大概说下思路:画出两个共享X轴,完全相同的图,下图取消上边界,下图取消下边界,然后再使用plot画两组平行线就大功告成。

参照官网例子画的堆积图代码
def respond_mode_bar(self):
labels = ['Braking','Right','Left','R&B','L&B']
# color_list = ['silver', 'red', 'blue', 'orange', 'deepskyblue']
# color_list = ['blue', 'orange', 'green', 'red', 'olive']
x = list(self.sub_list)
y = np.zeros((len(self.sub_list), len(labels)), dtype=np.float)
y0 = np.zeros(len(self.sub_list), dtype=np.float)
# fig, (ax1, ax2) = plt.subplots(2, 1, sharex=True)
gs = gridspec.GridSpec(2,1, height_ratios=[3,1], hspace=0.15)
fig = plt.figure(figsi
使用matplotlib实现坐标轴断裂效果

本文介绍如何在matplotlib中创建坐标轴断裂的图形。通过绘制两个共享X轴且部分边界的图,再配合plot绘制平行线,可以实现坐标轴断开的效果。示例代码参照了官方的broken_axis.py demo,可用于创建堆积图。
最低0.47元/天 解锁文章
3966





