我试图在matplotlib中创建一个带有errorbar的散点图。下面是我的代码的示例:
import matplotlib.pyplot as plt
import numpy as np
import random
x = np.linspace(1,2,10)
y = np.linspace(2,3,10)
err = [random.uniform(0,1) for i in range(10)]
plt.errorbar(x, y,
yerr=err,
marker='o',
color='k',
ecolor='k',
markerfacecolor='g',
label="series 2",
capsize=5,
linestyle='None')
plt.show()问题是输出的图根本不包含大写字母!

无论如何,我使用的是Ubuntu 13.04、Python 2.7.5 |Anaconda 1.6.1 (64位)|和Matplotlib 1.2.1。
这可能是一个需要覆盖的隐藏rcparam吗?
发布于 2013-08-26 10:28:05
对我来说起作用的是添加这个(根据:How to set the line width of error bar caps, in matplotlib):
(_, caps, _) = plt.errorbar(x,y, yerr=err, capsize=20, elinewidth=3)
for cap in caps:
cap.set_color('red')
cap.set_markeredgewidth(10)发布于 2018-04-15 12:21:53
这与matplotlib中的rcParams有关。要解决此问题,请在脚本的开头添加以下行:
import matplotlib
matplotlib.rcParams.update({'errorbar.capsize': 2})它也适用于plt.bar()。
发布于 2019-02-02 05:22:52
对astromax的回答稍作简化:
plt.errorbar(x,y, yerr=err, capsize=20, elinewidth=3, markeredgewidth=10)不知怎么的,markeredgewidth有时默认为0。
https://stackoverflow.com/questions/18434492
复制相似问题