How to specify the percentiles in a pyplot box?(如何指定PYPLATE框中的百分位数?)
本文介绍了如何指定PYPLATE框中的百分位数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
假设我有最简单的脚本
import plotly.offline as pyo
import plotly.graph_objs as go
# set up an array of 20 data points, with 20 as the median value
y = [1,14,14,15,16,18,18,19,19,20,20,23,24,26,27,27,28,29,33,54]
data = [
go.Box(
y=y,
boxpoints='outliers' # display only outlying data points
)
]
pyo.plot(data, filename='box2.html')
在此我有以下内容
我的问题是,我知道这是针对25%和75%的人的? 是否有方法可以更改显示的百分位数的值?推荐答案
- 根据其他评论和答案。四分位数是四分位数,可以用其他方法计算
- 如果除四分位数外不需要百分位数,则可以在图中添加额外的线条
下面演示了如何在该图中添加9条百分位线
import plotly.graph_objs as go
import numpy as np
import pandas as pd
import plotly.express as px
# set up an array of 20 data points, with 20 as the median value
y = [1,14,14,15,16,18,18,19,19,20,20,23,24,26,27,27,28,29,33,54]
data = [
go.Box(
y=y,
boxpoints='outliers' # display only outlying data points
)
]
fig = go.Figure(data) #.add_traces(go.Bar(x=np.repeat(["trace 0"],9), y=[np.percentile(y, q) for q in np.linspace(10,90,9)]))
fig.add_traces(
px.line(
pd.DataFrame(
{
"y": np.repeat(np.percentile(y, np.linspace(10, 90, 9)), 2),
"x": np.tile([0.4, 0.6], 9),
"p": np.repeat(np.linspace(10, 90, 9), 2),
}
),
x="x",
y="y",
color="p",
)
.update_traces(showlegend=False, xaxis="x2")
.data
).update_layout(xaxis2={"overlaying": "x", "visible": False, "range": [0, 1]})
这篇关于如何指定PYPLATE框中的百分位数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:如何指定PYPLATE框中的百分位数?


基础教程推荐
猜你喜欢
- 哪些 Python 包提供独立的事件系统? 2022-01-01
- 使 Python 脚本在 Windows 上运行而不指定“.py";延期 2022-01-01
- 使用 Google App Engine (Python) 将文件上传到 Google Cloud Storage 2022-01-01
- 如何在Python中绘制多元函数? 2022-01-01
- 如何在 Python 中检测文件是否为二进制(非文本)文 2022-01-01
- 合并具有多索引的两个数据帧 2022-01-01
- Python 的 List 是如何实现的? 2022-01-01
- 使用Python匹配Stata加权xtil命令的确定方法? 2022-01-01
- 将 YAML 文件转换为 python dict 2022-01-01
- 症状类型错误:无法确定关系的真值 2022-01-01