gpt4 book ai didi

python - Altair 中的多线图 - 数据格式?

转载 作者:行者123 更新时间:2023-12-01 07:54:26 28 4
gpt4 key购买 nike

如何在 Altair 中创建多线图?

特别是,我有一个 pandas 数据框,如下所示:

          Commit    Author  Date        Week    Adds   Deletes  Changes Files     
0 cf6dc511bbf Dev 1 2019-03-18 12 0 0 0 0
1 6a96d05922f Dev 1 2019-03-18 12 504 0 504 5
2 0fbc7192380 Dev 1 2019-03-19 12 125 105 230 4
3 64a9c4a1fa0 Dev 1 2019-03-19 12 8 0 8 1

并且想在同一组轴上绘制日期与添加、删除和更改的关系。这是怎么做到的?我需要以某种方式 reshape 我的数据吗?

Altair 网站上的示例仅包含一种颜色,而且似乎是自动的。

最佳答案

是的,您需要 reshape 数据,作为 pandas 中的预处理步骤,或使用 Fold Transform在 Altair 3.0 中可用。文档中提供了有关使用此类宽格式数据的信息:Altair: Long-form vs. Wide-form Data .

以下是对与您的数据类似的数据使用基于转换的方法的示例:

import pandas as pd
import numpy as np
import altair as alt

df = pd.DataFrame({
'Date': pd.date_range('2019-01-01', freq='D', periods=20),
'Adds': np.random.randint(0, 100, 20),
'Deletes': np.random.randint(0, 100, 20),
'Changes': np.random.randint(0, 100, 20),
})

alt.Chart(df).transform_fold(
['Adds', 'Deletes', 'Changes']
).mark_bar().encode(
x='yearmonthdate(Date):O',
y='value:Q',
color='key:N'
)

chart

关于python - Altair 中的多线图 - 数据格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56046970/

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