微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Plotly:如何显示边际直方图计数以外的其他值? 情节完整代码:

如何解决Plotly:如何显示边际直方图计数以外的其他值? 情节完整代码:

我正在尝试在原始图上方创建一个链接的边缘图,具有相同的 x 轴但具有不同的 y 轴。

我已经看到在 plotly.express 包中有 4 个选项,您可以在其中创建散点图上的 margin_x 图,但它们都基于与 x 和 y 相同的列。

就我而言,我的 x 轴上有一个日期,y 轴上有某物的比率,我正在尝试生成该比率所基于的样本的直方图边际分布图(位于df 中的示例列)。

我正在简化我的尝试,但没有减少任何重要的细节:

import pandas as pd
import plotly.express as px

df = pd.DataFrame(
    {
        "date": [pd.Timestamp("20200102"),pd.Timestamp("20200103")],"rate": [0.88,0.96],"samples": [130,1200])
    }
)

fig = px.scatter(df,x='date',y='rate',marginal_x='histogram')
fig.show()

我基于的文档:https://plotly.com/python/marginal-plots/

我想要的结果: Example:

enter image description here

不同之处在于我使用了聚合 df,所以我的计数仅为 1,而不是样本数量

有什么想法吗?

谢谢!

解决方法

我理解你的说法

[...] 和我的 y 轴上某物的比率

...表示您希望在直方图上显示一个计数的值。

marginal_x='histogram' 中的

px.scatter() 似乎默认显示 only 计数,这意味着没有直接的方法来显示单个观察的值。但如果您愿意将 fig = make_subplots()go.Scatter()go.Bar() 结合使用,那么您可以轻松构建:

情节

enter image description here

完整代码:

# import pandas as pd
import pandas as pd
import numpy as np
from datetime import datetime,timedelta
from plotly.subplots import make_subplots
import plotly.graph_objects as go

fig = make_subplots(rows=2,cols=1,row_heights=[0.2,0.8],vertical_spacing = 0.02,shared_yaxes=False,shared_xaxes=True)

df = pd.DataFrame(
    {
        "date": [pd.Timestamp("20200102"),pd.Timestamp("20200103")],"rate": [0.88,0.96],"samples": [130,1200]
    }
)

fig.add_trace(go.Bar(x=df['date'],y=df['rate'],name = 'rate'),row = 1,col = 1)

fig.update_layout(bargap=0,bargroupgap = 0,)

fig.add_trace(go.Scatter(x=df['date'],y=df['samples'],name = 'samples'),row = 2,col = 1)
fig.update_traces(marker_color = 'rgba(0,250,0.3)',marker_line_width = 0,selector=dict(type="bar"))

fig.show()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?