作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试为著名的Kaggle Titanic challenge做一些数据可视化。 。我想绘制几个饼图,sunburst variant ,在内圈中放入一些特定特征(性别、机票类别等),在外圈中放入存活/死亡的特征。
这是一个例子:
我想对内圈和外圈使用不同的颜色。例如,蓝色/粉色代表男性/女性,绿色/灰色代表幸存者/死亡者。我做不到,如果我通过性别来区分,我就无法通过生存来区分,反之亦然。
这是我的代码:
color_discrete_sequence = ['#8B25BE', '#2D9157', '#2D5F91', '#97909A']
fig = px.sunburst(
total_raw_df,
path=['sex', 'survived'],
# names='sex',
labels=[{'0': 'Deceased', '1': 'Survived'}],
color=total_raw_df['sex'],
color_discrete_sequence=color_discrete_sequence
)
fig.update_traces(
textinfo="label+percent parent",
insidetextorientation='horizontal'
)
fig.update_layout(
font=dict(size=18)
)
fig.show()
数据集是经典的泰坦尼克号数据集,仅供引用,这些是数据框列:
Index(['pclass', 'survived', 'name', 'sex', 'age', 'sibsp', 'parch', 'ticket',
'fare', 'cabin', 'embarked', 'boat', 'body', 'home.dest'],
dtype='object')
最佳答案
由于我们无法准备与问题相同的数据,因此我们转而使用seaborn数据集来解决该问题。颜色对应关系令人困惑,但可以通过更新与标签一对一关系的颜色来实现。您可以使用 fig.data
查看图形结构来检查标签。
import seaborn as sns
df = sns.load_dataset('titanic')
import plotly.express as px
color_discrete_sequence = ['#8B25BE', '#2D9157', '#2D5F91', '#97909A']
fig = px.sunburst(
df,
path=['sex', 'survived'],
# names='sex',
labels=[{'0': 'Deceased', '1': 'Survived'}],
color=df['sex'],
color_discrete_sequence=color_discrete_sequence
)
fig.update_traces(
textinfo="label+percent parent",
insidetextorientation='horizontal'
)
fig.update_layout(
font=dict(size=18)
)
color_mapping = {'0': "#708090", '1': "#006400", 'female': "#c71585", 'male': "#0000cd"}
fig.update_traces(marker_colors=[color_mapping[cat] for cat in fig.data[-1].labels])
fig.show()
关于python - Plotly sunburst - 为内圈和外圈定义不同的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74679786/
我想做的是修剪一些保存为 VLA-OBJECTS 的折线,将它们转换为 Entities 没有问题,但我想要图形化是以下列方式修剪我的图像: 如您所见,我想修剪角落上红色圆圈外的所有蓝线,并且我想自动
我是一名优秀的程序员,十分优秀!