相关疑难解决方法(0)

Python/Matplotlib - 有没有办法制作不连续的轴?

我正在尝试使用具有不连续x轴的pyplot创建绘图.绘制的通常方法是轴将具有以下内容:

(值)---- // ----(后来的值)

其中//表示您正在跳过(值)和(后面的值)之间的所有内容.

我还没有找到任何这方面的例子,所以我想知道它是否可能.我知道你可以通过不连续性加入数据,例如财务数据,但我想让轴上的跳转更明确.目前我只是使用子图,但我真的希望最终在同一个图表上结束所有内容.

python matplotlib

68
推荐指数
3
解决办法
3万
查看次数

matplotlib 条形图中的轴斜线标记断了?

我见过在轴上放置断轴斜线标记的 matplotlib 示例,例如这个

我的问题是,如何将其放置在损坏的栏杆处?是否可以通过编程方式完成逐月更新时间序列图?

下面是我想要使用 Excel 完成的示例。请注意巴黎六月酒吧和马德里五月酒吧中的波形符。波形符隐藏了它所覆盖的栏的一部分。

断轴 Excel 示例

我还提供了更简单的示例数据以及迄今为止我所能做的事情。

XX = pd.Series([200,400,100,1400],index=['x1','x2','x3','x4'])
fig, (ax1,ax2) = plt.subplots(2,1,sharex=True,
                         figsize=(5,6))
ax1.spines['bottom'].set_visible(False)
ax1.tick_params(axis='x',which='both',bottom=False)
ax2.spines['top'].set_visible(False)
ax2.set_ylim(0,500)
ax1.set_ylim(1200,1500)
ax1.set_yticks(np.arange(1000,1501,100))
XX.plot(ax=ax1,kind='bar')
XX.plot(ax=ax2,kind='bar')
for tick in ax2.get_xticklabels():
    tick.set_rotation(0)
d = .015  
kwargs = dict(transform=ax1.transAxes, color='k', clip_on=False)
ax1.plot((-d, +d), (-d, +d), **kwargs)      
ax1.plot((1 - d, 1 + d), (-d, +d), **kwargs)
kwargs.update(transform=ax2.transAxes)  
ax2.plot((-d, +d), (1 - d, 1 + d), **kwargs)  
ax2.plot((1 - d, 1 + d), (1 - d, 1 + d), **kwargs)
plt.show()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

python matplotlib bar-chart

7
推荐指数
1
解决办法
2万
查看次数

标签 统计

matplotlib ×2

python ×2

bar-chart ×1