matplotlib - Seaborn 线图使用中位数而不是平均值
问题描述
我seaborn.lineplot()
用来创建这样的线图(代表平均值的线,被代表标准的带包围):
sns.lineplot(x="trial", y="rvalues", hue="subject", err_style="band", ci='sd', data=df)
我唯一的问题是,由于我的数据不是高斯数据,我更关心的是中位数而不是均值。如何在 Seaborn 中做到这一点?
或者有没有类似的工具?我知道我可以在 matplotlib 中从头开始做,但这需要做很多工作才能使它变得更好。
解决方案
estimator
应该是熊猫方法。
使用estimator=np.median
而不是estimator="median"
.
sns.lineplot(x="trial", y="rvalues", hue="subject", err_style="band",
ci='sd',
estimator=np.median,
data=df)
推荐阅读
- c++11 - 创建具有未知数量的 std::array 的函数
- wcf - WCF VPN 端点和 Internet 端点
- codenameone - cn1PostMessage 在 Android 上未定义。PostMessage 不工作
- java - 创建单例时使用锁定对象
- android - 如何将 LayoutBackground 移动到 ImageView 后面
- angular - 如何防止在Angular发布/获取请求中“按字母顺序自动排序对象属性”
- javascript - 您可以自动将产品从在线商店添加到 WooCommerce 吗?
- angular - IE11 不在动态表中渲染 DOM 元素
- ruby-on-rails - 重构代码以减少分配分支条件的大小
- swift - 谁在swift 5中以水平和垂直方向滚动表格视图