python - 如何在 seaborn 图中显示多条线?
问题描述
我想在 seaborn 点图中画三条线。三行基于命名为的标签Total Confirmed, Total Death, Total Recovered
这是我的数据集
Date Total Confirmed Total Death Total Recovered
0 1/22/20 555 17 28
1 1/23/20 654 18 30
2 1/24/20 941 26 36
3 1/25/20 1434 42 39
4 1/26/20 2118 56 52
我写的代码只显示了一个值,没有显示其他两个值。如何修复我的代码以在日志图中显示所有三行,因为它们的结果彼此不同。
plt.figure(figsize=(18,7))
ax = sns.pointplot(data = df, x='Date', y='Total Confirmed', color="b")
plt.title('General Trend', fontsize=22, y=1.015)
plt.xlabel('month-day-year', labelpad=16)
plt.ylabel('# of people', labelpad=16)
ax.figure.legend()
plt.xticks(rotation=90);
plt.savefig('images/image1.png')
解决方案
你需要在df上使用melt:
df = df.melt("Date", ["Total Confirmed","Total Death","Total Recovered"])
ax = sns.pointplot(data = df, x='Date', y='value', hue="variable")
推荐阅读
- azure - 有没有办法在 Azure 虚拟机上启用 CORS?
- tensorflow - 如何在所有时间步中获得网络中所有层中所有单元的网络激活?
- cassandra - Cassandra:NoHostAvailableException:所有主机尝试查询失败
- javascript - 使用 discord.js/javascript 请求文件、读取内容并将内容发送到频道?
- python - 当一切正常时,为什么我的 Ally Invest 余额没有显示?
- react-native - 反应原生链接监听特定的 URL 并返回到应用程序?
- javascript - 使正则表达式允许字母、数字和特殊字符
- json - 使用 Cheshire 解析为 json - generate-string 和 parse-string
- javascript - 如何避免重复的元标记?
- javascript - 如何在 DialogFlow 上进行永久会话?