我知道在matplotlib中这是一个问题-但是应该已经解决了,对吧?
当我执行时。我的散点图示例代码:
%matplotlib inline
import matplotlib.pyplot as plt
plt.style.use('seaborn-whitegrid')
import numpy as np
plt.xlabel(r'$Label \, in \, Latex$')
plt.ylabel(r'$Label \, in \, Latex$')
plt.title(r'$Title \, in \, Latex$')
#plt.text(1, 15, r'$Latex \, Example \, Text$')
x=[1, 2, 3, 4]
y=[1, 4, 9, 16]
plt.axis([0, 6, 0, 20])
plt.errorbar(x, y, yerr=1, fmt='.k', capsize=3)
plt.savefig('foo.pdf', bbox_inches="tight")
误差线不在点上居中。我正在使用matplotlib 3.02-Anaconda不知何故存在3.03。
答案 0 :(得分:2)
我发现以下解决方法:为错误栏指定linewidth=1
使它们居中。我尝试了几个值,任何低于1.5的值都居中,但是高于1.5(含)的值会使它偏离中心。我不知道原因。它可能与dpi
import matplotlib.pyplot as plt
plt.style.use('seaborn-whitegrid')
import numpy as np
plt.xlabel(r'$Label \, in \, Latex$')
plt.ylabel(r'$Label \, in \, Latex$')
plt.title(r'$Title \, in \, Latex$')
#plt.text(1, 15, r'$Latex \, Example \, Text$')
x=[1, 2, 3, 4]
y=[1, 4, 9, 16]
plt.axis([0, 6, 0, 20])
plt.errorbar(x, y, yerr=1, lw=1, fmt='.k', capsize=3)
答案 1 :(得分:0)
另存为.svg
为我解决了这个问题。
使用jupyter笔记本,该图显示有非居中误差栏,但可以正确保存。
import matplotlib.pyplot as plt
plt.style.use('seaborn-whitegrid')
import numpy as np
plt.xlabel(r'$Label \, in \, Latex$')
plt.ylabel(r'$Label \, in \, Latex$')
plt.title(r'$Title \, in \, Latex$')
#plt.text(1, 15, r'$Latex \, Example \, Text$')
x=[1, 2, 3, 4]
y=[1, 4, 9, 16]
plt.axis([0, 6, 0, 20])
plt.errorbar(x, y, yerr=1, lw=2, fmt='o', capsize=3)
plt.savefig('TEST.svg', bbox_inches='tight', format='svg')