我有一个看起来像这样的数据框:
id date API_changes count content
134 2019-01-01 2 NaN Nan
134 2019-02-05 34 12 API deleted
134 2019-02-12 18 8 Deprecation
134 2019-03-10 56 29 Segmentation Error
134 2019-05-12 75 40 Path deleted
134 2019-07-01 25 10 Type required
134 2019-10-09 137 55 API deprecated
134 2019-12-31 32 18 Media type removed
134 2020-01-03 150 99 Required param missing
我想以旭日形式或任何可以捕捉
count
在API_changes
中的比例的图表来可视化这些数据。 count
指定每个 API_changes
的 commit_date
中的重大更改数。
我之前以散点图的形式将其可视化(x 轴上有
date
,y 轴上有API_changes
,color
为content
列,symbol
也一样),但是这没有达到目的,因为我无法在日期上直观地看到这些变化在大小上有何不同
一个选项是堆积条形图,但我在想是否有更多独特的图表(最好是旭日图)用于此类分析?
sunburst would be great here for visualizing hierarchical data and proportions
我们可以像这样使用
Ploty
作为例子,我们假设df
是你的DataFrame
import pandas as pd
import plotly.graph_objs as go
data = df.copy()
data_agg = data.groupby(['content', 'date']).sum().reset_index()
fig = go.Figure(go.Sunburst(
labels=data_agg['content'].tolist() + data_agg['date'].astype(str).tolist(),
parents=[""] * len(data_agg['content'].unique()) + data_agg['content'].tolist(),
values=data_agg['count'].tolist(),
ids=data_agg['content'].tolist() + data_agg['date'].astype(str).tolist(),
branchvalues="total",
))
fig.update_layout(title='Sunburst Chart: Proportion of Count in API_changes',
margin=dict(l=0, r=0, t=30, b=0))
fig.show()