有没有办法在 matplotlib 的单个图中使用 hlines() 函数绘制多条水平线?
Is there a way to plot multiple horizontal lines using hlines() function in a single plot of matplotlib?
我有一个 pm2_5 数据框数据,我使用 matplotlib scatterplot
绘制了它。
我想在不同的 y 值 处插入多条水平线,
我通过为 y 的每个不同值手动调用“'ax.axhline'”函数来完成此操作。有什么方法可以使整个过程自动化?
# making a graph with delineated health levels of pm2.5 in the year 2015
fig, ax=plt.subplots(figsize=(10,7));
pm2_5.plot(kind='scatter',x='S_no',y='pm2_5',c='pm2_5',ax=ax, cmap='tab20b');
ax.axhline(y=150,linestyle ='--')
ax.axhline(y=100,linestyle ='--')
ax.axhline(y=200,linestyle ='--')
ax.axhline(y=300,linestyle ='--')
它应该是这样的:
您可以使用列表理解:
[ax.axhline(y=i, linestyle='--') for i in [150,100,200,300]]
正在更正以上答案以消除拼写错误...
[ax.axhline(y=i, linestyle='--') for i in [150,100,200,300]]
我有一个 pm2_5 数据框数据,我使用 matplotlib scatterplot
绘制了它。
我想在不同的 y 值 处插入多条水平线,
我通过为 y 的每个不同值手动调用“'ax.axhline'”函数来完成此操作。有什么方法可以使整个过程自动化?
# making a graph with delineated health levels of pm2.5 in the year 2015
fig, ax=plt.subplots(figsize=(10,7));
pm2_5.plot(kind='scatter',x='S_no',y='pm2_5',c='pm2_5',ax=ax, cmap='tab20b');
ax.axhline(y=150,linestyle ='--')
ax.axhline(y=100,linestyle ='--')
ax.axhline(y=200,linestyle ='--')
ax.axhline(y=300,linestyle ='--')
它应该是这样的:
您可以使用列表理解:
[ax.axhline(y=i, linestyle='--') for i in [150,100,200,300]]
正在更正以上答案以消除拼写错误...
[ax.axhline(y=i, linestyle='--') for i in [150,100,200,300]]