如何显示多个字段的分组条形图? (牵牛星)
How do I display Grouped Bar Chartfor multiple fields? (Altair)
我有以下数据集
我想在某种图表中显示:参数应位于 X 轴上:确认、死亡、康复。必须为每个 region_name 定义它们。 Y 轴应该是这些值的总和。看了官方文档中的melt()方法,但是不太明白怎么用
我需要得到这样的东西,只有下面的形式。
您有宽格式数据;您需要将其转换为 长格式 数据。您可以使用 melt()
或类似方法在 pandas 中执行此操作,也可以使用 Altair 的 transform_fold
。您可以在 https://altair-viz.github.io/user_guide/data.html#long-form-vs-wide-form-data
中阅读更多相关信息
对于您的数据,它可能看起来像这样:
import pandas as pd
import altair as alt
data = pd.read_csv('data_from_screenshot.csv')
alt.Chart(data).transform_fold(
["confirmed", "deaths", "recovered"],
as_=["field", "value"]
).mark_bar().encode(
x="field:N",
y="sum(value):Q",
column="region_name:N"
)
我有以下数据集
我想在某种图表中显示:参数应位于 X 轴上:确认、死亡、康复。必须为每个 region_name 定义它们。 Y 轴应该是这些值的总和。看了官方文档中的melt()方法,但是不太明白怎么用
我需要得到这样的东西,只有下面的形式。
您有宽格式数据;您需要将其转换为 长格式 数据。您可以使用 melt()
或类似方法在 pandas 中执行此操作,也可以使用 Altair 的 transform_fold
。您可以在 https://altair-viz.github.io/user_guide/data.html#long-form-vs-wide-form-data
对于您的数据,它可能看起来像这样:
import pandas as pd
import altair as alt
data = pd.read_csv('data_from_screenshot.csv')
alt.Chart(data).transform_fold(
["confirmed", "deaths", "recovered"],
as_=["field", "value"]
).mark_bar().encode(
x="field:N",
y="sum(value):Q",
column="region_name:N"
)