向海运散点图添加误差条(合并线状图时) [英] Adding error bars to seaborn scatter plot (when a line plot is combined)
本文介绍了向海运散点图添加误差条(合并线状图时)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我在海运中有一个散点+线状图,用这种方式创建:
import seaborn as sns
import pandas as pd
# load sample data from seaborn
flights = sns.load_dataset('flights')
fig_example = plt.figure(figsize=(10, 10))
sns.lineplot(data=flights, x="year", y="passengers", hue="month")
sns.scatterplot(data=flights, x="year", y="passengers", hue="month",legend=False)
现在,我想添加错误条。例如,第一个入境点是(年份=1949,旅客=112)。我想为这个特定的项目添加一个STD。例如:+=5名乘客。我该怎么做?
此问题没有回答我的问题:How to use custom error bar in seaborn lineplot?
我需要将其添加到散点图。而不是线条图。
当我尝试此命令时:
ax = sns.scatterplot(x="x", y="y", hue="h", data=gqa_tips, s=100, ci='sd', err_style='bars')
失败:
AttributeError: 'PathCollection' object has no property 'err_style'
谢谢。
推荐答案
- 此问题似乎显示了对误差条/置信度区间(
ci
)的误解。- 具体地说,...我要为此特定项目添加的第一个入口点
- 在单个数据点上放置错误条是不正确的统计表示,因为这些单个数据点没有错误,至少在与问题相关的时候没有错误。
- 单个数据点可能存在与精确度和精确度相关的测量误差,但在这里并非如此。有关测量误差的示例,请参阅Measurements and Error Analysis和Visualizing Errors。
- 绘图中的每个点都没有错误,因为它是一个精确值。
- 聚合值(例如平均值)相对于所有真实数据点具有
ci
。
- 聚合值(例如平均值)相对于所有真实数据点具有
- 在没有
hue
的lineplot
中生成的聚合值将使用estimator='mean'
,然后将具有ci
。 - 参考How to use custom error bar in seaborn lineplot自定义
ci
。
import pandas as pd
import seaborn as sns
# load the data
flights = sns.load_dataset('flights')
# plots
fig, (ax1, ax2, ax3) = plt.subplots(ncols=3, figsize=(18, 7))
sns.lineplot(data=flights, x="year", y="passengers", marker='o', ci=95, ax=ax1, label='Mean CI: 95')
ax1.set(title='Mean Passengers per Year')
sns.lineplot(data=flights, x="year", y="passengers", ci='sd', err_style='bars', ax=ax2, label='Mean CI: sd')
flights.groupby('year').passengers.agg([min, max]).plot(ax=ax2)
ax2.set(title='Mean Min & Max Passengers per Year')
sns.lineplot(data=flights, x="year", y="passengers", hue="month", marker='o', ax=ax3)
ax3.set(title='Individual Passengers per Month
No CI for Individual Points')
这篇关于向海运散点图添加误差条(合并线状图时)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文