gpt4 book ai didi

python - Plotly:如何使用散点图显示 multiIndex 数据框?

转载 作者:行者123 更新时间:2023-12-05 06:07:59 26 4
gpt4 key购买 nike

我正在使用多索引数据框绘制折线图。使用 Matplotlib 绘制图形时我可以看到正确的结果,但使用 Plotly 散点图绘制时数据框显示错误的输出 - 为什么?


将 pandas 导入为 pd
数据 = pd.DataFrame([
('Q1','蓝色',100),
('Q1','绿色',300),
('Q2','蓝色',200),
('Q2','绿色',350),
('Q3','蓝色',300),
('Q3','绿色',400),
('Q4','蓝色',400),
('Q4','绿色',450),
],
columns=['季度', '公司', '值(value)']
)
data = data.set_index(['quarter', 'company']).value

data.unstack().plot(kind='bar', stacked=True)

上面的代码绘制了正确的图表。下面的代码也生成了正确的结果。


fig = go.Figure()
fig.add_trace(go.Scatter(x=sample.index, y=sample['Blue'],
#mode='线条+标记', name='',
#line=dict(color=colors_list[1],width=2,) ,

)
)

但我不知道如何在散点图中同时绘制蓝色和绿色?

例子:


fig = go.Figure()
fig.add_trace(go.Scatter(x=sample.index, y=sample,
#mode='线条+标记', name='',
#line=dict(color=colors_list[1],width=2,) ,

)
)

任何人都可以帮助如何将蓝色和绿色一起绘制?

最佳答案

你的问题有点不清楚,但我假设你的主要目标是显示一组四分之一的值,其中值分为两组 ['blue', 'red']。 (我不太明白为什么你要的是散点图,但显示的是 matplotlib 条形图……)。无论如何,如果我是对的,那么您的用例非常适合 plotly.express , 具体来说 px.scatter以下代码段将生成下图。

import pandas as pd
import plotly.graph_objects as go
import plotly.express as px

data = pd.DataFrame([
('Q1','Blue',100),
('Q1','Green',300),
('Q2','Blue',200),
('Q2','Green',350),
('Q3','Blue',300),
('Q3','Green',400),
('Q4','Blue',400),
('Q4','Green',450),
],
columns=['quarter', 'company', 'value']
)

fig = px.scatter(data, x = 'quarter', y = 'value',
color = 'company',
color_discrete_sequence=['Blue', 'Green'])
fig.show()

enter image description here

关于python - Plotly:如何使用散点图显示 multiIndex 数据框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65221839/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com