相关疑难解决方法(0)

如何在matplotlib中设置错误条上限的线宽?

如何更改Matplotlib中错误条上限的线宽?

我尝试了以下代码:

(_, caplines, _) = matplotlib.pyplot.errorbar(
    data['distance'], data['energy'], yerr=data['energy sigma'],
    capsize=10, elinewidth=3)

for capline in caplines:
    capline.set_linewidth(10)
    capline.set_color('red')

pp.draw()
Run Code Online (Sandbox Code Playgroud)

不幸的是,这将更新瓶盖的颜色,但并没有更新线宽盖的!

结果效果类似于下图中的"胖错误条线/薄帽": 在此输入图像描述

在这种情况下,有"胖"酒吧帽是很好的; 怎么能在Matplotlib中完成?逐个"手动"绘制条形帽plot()可以工作,但更简单的替代方案是最好的.

python matplotlib

38
推荐指数
2
解决办法
4万
查看次数

如何使用Matplotlib强制使用错误栏进行渲染

我试图在我的建模数据之上用错误条过度绘制一些经验数据.错误条似乎首先呈现,因此重写(见下文)

我尝试过使用zorder,但我仍然得到相同的结果.我正在使用的代码是

    for i in range(1,len(pf)):
            pf[i,:] = av_pf_scale * pf[i,:]
            pylab.semilogy(pf[0,0:180],pf[i,0:180],color='0.75')

    pylab.semilogy(av_pf[0:180],color='r')
    pylab.semilogy(av_mie[0:180],color='g', linestyle='-')

    pylab.draw()
    f = pylab.errorbar(ang,data[j],
                            yerr = delta_data[j],
                            fmt = 'o',
                            markersize = 3,
                            color = 'b',
                            zorder = 300,
                            antialiased = True)
Run Code Online (Sandbox Code Playgroud)

如果有人能告诉我如何使错误栏呈现在顶部,我将不胜感激.

Mulitplot

python matplotlib

15
推荐指数
1
解决办法
6102
查看次数

错误栏上的顶部和底部行与python和seaborn

我试图用python和seaborn绘制错误栏,但我对它们的外观并不完全满意.

默认的seaborn错误栏如下所示:

errobar默认风格

但我想在这样的误差条上添加底线和顶线(为了区分两个误差线,它是默认的matplotlib样式):

defaultmatplolib

我怎么能在seaborn中这样做?

这是代码:

import matplotlib.pyplot as plt
import seaborn as sns

fig1 = plt.figure(figsize=(20, 12))


x_values = [1,2,3,4]
y_values = [1,2,3,4]

y_error = [1,0.5,0.75,0.25]

plt.errorbar(x_values, y_values,  yerr=y_error ,fmt='o', markersize=8)

plt.show()
Run Code Online (Sandbox Code Playgroud)

python matplotlib seaborn

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

没有阴影误差线的阴影误差线标记

我正在尝试对误差条图的标记进行着色,而不对误差条线进行着色。

这是一个 MWE:

import matplotlib.pyplot as plt

x = [1, 2, 3, 4]
y = [1, 2, 3, 4]
dx = 0.1
dy = 0.1

plt.errorbar(x, y, xerr = dx, yerr = dy, marker = '.', 
             linestyle = ' ', color = 'black', capsize = 2,
             elinewidth = 0.5, capthick = 0.4, alpha = 0.8)

plt.savefig('MWE.pdf')
plt.show()
Run Code Online (Sandbox Code Playgroud)

另外,如何在不改变倾覆的情况下摆脱标记边缘?如果我把markeredgewidth = 0capsize被复位。

更新代码

import matplotlib.pyplot as plt
import matplotlib

x = [1, 2, 3, 4]
y = …
Run Code Online (Sandbox Code Playgroud)

python matplotlib

5
推荐指数
1
解决办法
509
查看次数

如何用条形图绘制最小/最大条形

我想调整我的绘图代码以显示最小/最大条形,如下图所示:

我的代码是:

from datetime import datetime, timedelta
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
sns.set_style("white")
sns.set_style('darkgrid',{"axes.facecolor": ".92"}) # (1)
sns.set_context('notebook')

Delay = ['S1', 'S2', 'S3', 'S4']

Time = [87, 66, 90, 55]

df = pd.DataFrame({'Delay':Delay,'Time':Time})
print("Accuracy")

display(df) # in jupyter

fig, ax = plt.subplots(figsize = (8,6))

x = Delay
y = Time

plt.xlabel("Delay", size=14)
plt.ylim(-0.3, 100)
width = 0.1

for i, j in zip(x,y): 
    ax.bar(i,j, edgecolor = "black",
        error_kw=dict(lw=1, capsize=1, capthick=1)) …
Run Code Online (Sandbox Code Playgroud)

python matplotlib pandas seaborn

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

标签 统计

matplotlib ×5

python ×5

seaborn ×2

pandas ×1