python - 我想在seaborn中制作一个自动传奇,但它不起作用
问题描述
我想在seaborn中制作一个自动传奇,但它不起作用。如何自动生成图例?
plt.figure(figsize=(15, 10))
sns.pointplot(data=tmp_hs_df, x="Geographic Area", y="percent", color="lime", alpha=0.8, label="High School Not Graduated Rate")
sns.pointplot(data=tmp_poverty_df, x="Geographic Area", y="percent", color="red", alpha=0.8, label="Poverty Rate")
plt.legend()
plt.xlabel("States")
plt.ylabel("Percent")
plt.title("High School Not Graduate Rate AND Poverty Rate")
plt.grid()
tmp_hs_df 和 tmp_poverty_df
图表
解决方案
检查此代码:
import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np
import pandas as pd
x = np.linspace(0, 50, 11)
y1 = 20 - x
y2 = 15 - 0.8*x
df = pd.DataFrame({'x': x,
'y1': y1,
'y2': y2})
fig, ax = plt.subplots(1, 1, figsize=(15, 10))
sns.pointplot(ax = ax, data = df, x = 'x', y = 'y1', color = 'lime', alpha = 0.8)
sns.pointplot(ax = ax, data = df, x = 'x', y = 'y2', color = 'red', alpha = 0.8)
ax.legend(handles = ax.lines[::len(df) + 1], labels = ['High School Not Graduated Rate', 'Poverty Rate'])
ax.set_xlabel('States')
ax.set_ylabel('Percent')
ax.set_title('High School Not Graduate Rate AND Poverty Rate')
ax.grid()
plt.show()
这使得这个情节:
您可以使用以下行管理图例:
ax.legend(handles = ax.lines[::len(df) + 1], labels = ['High School Not Graduated Rate', 'Poverty Rate'])
我使用自动生成的数据来绘制图表,用您的数据替换它们。
推荐阅读
- linux - 未设置带有 PKG_CHECK_MODULES 的 Autoconf
_CFLAGS 和 _LIBS 变量 - regex - 正则表达式在 \n 和 \t 之间选择字符,中间有数字
- java - Android 导航组件 - 如果用户未登录,则导航到其他活动
- graphql - 在 Graphql (NestJs) 中扩展泛型类型
- javascript - 其他js文件上的异步函数总是返回未定义,但函数运行
- docker - 无法 cd 进入 Docker 卷中目录的软链接
- javascript - Heroku - 未找到
- reactjs - 使用 create-react-app 运行自定义打字稿脚本时遇到问题
- python - 在 python 中使用正则表达式识别字符串中的模式
- mysql - 在 Rails 中加入具有活动存储的多个表