为了账号安全,请及时绑定邮箱和手机立即绑定

如何更改 matplotlib 模块中错误栏的格式

如何更改 matplotlib 模块中错误栏的格式

慕村9548890 2023-03-01 15:42:37
我想弄清楚如何在我的情节中只制作带有上限“-”的上误差线,我已经通过lolims争论弄清楚了。不幸的是,我的错误栏标有箭头,我更喜欢默认的。上面的子图是我想要的错误栏,下面的是我想要在上面的子图中的标记。我的代码:import pandas as pdimport matplotlib.pyplot as pltsheet = pd.read_excel(load file with my data)fig, axs = plt.subplots(2, 1)fig.suptitle('Gene expression', fontsize=16)axs[0].bar(sheet.columns, sheet.iloc[17],hatch="/", color="white", edgecolor="black")axs[0].errorbar(sheet.columns, sheet.iloc[17], yerr=sheet.iloc[22], capsize=3, ecolor='black', fmt=' ', elinewidth=1,                lolims=True)axs[1].bar(sheet.columns, sheet.iloc[17],hatch="-", color="white", edgecolor="black")axs[1].errorbar(sheet.columns, sheet.iloc[17], yerr=sheet.iloc[22], capsize=3, ecolor='black', fmt=' ', elinewidth=1,)plt.show() 和我的地块图片:我怎样才能实现它?
查看完整描述

1 回答

?
慕标琳琳

TA贡献1830条经验 获得超9个赞

根据您是否希望看到小写字母,您有三种可能性:

  1. 指定 (2,N) 形 yerr 或

  2. 在条形图后面绘制误差条

  3. 之后更改上限(如 BigBen 在下面评论的那样)

import matplotlib.pyplot as plt


fig,ax = plt.subplots(3)

x = range(1,4)


ax[0].bar(x, x, fc='w', ec='k')

ax[0].errorbar(x, x, yerr=[[0,0,0], [.1,.2,.3]], fmt='none', capsize=3)


ax[1].bar(x, x, fc='w', ec='k', zorder=1 )

ax[1].errorbar(x, x, yerr=[.1,.2,.3], fmt='none', capsize=3, zorder=0)


ax[2].bar(x, x, fc='w', ec='k')

_, cl, _ = ax[2].errorbar(x, x, yerr=[.1,.2,.3], lolims=True, fmt='none', capsize=3)

cl[0].set_marker('_')

#cl[1].set_marker('')  # to remove the lower cap

//img1.sycdn.imooc.com//63ff02200001570106250467.jpg

查看完整回答
反对 回复 2023-03-01
  • 1 回答
  • 0 关注
  • 120 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信