【问题标题】:Draw horizontal line on facetplot (seaborn relplot) [duplicate]在 facetplot 上绘制水平线(seaborn relplot)[重复]
【发布时间】:2020-02-19 21:20:29
【问题描述】:

我用下面的代码制作了下面的图。我想创建一条横跨所有构面图的水平红色虚线以突出显示高于 200 的所有点,但是当我运行它时

plt.axhline(200, ls='--', linewidth=3, color='red')

我只在最后一个情节中得到了这条线。我猜我需要遍历所有的情节,但我不知道该怎么做。感谢您的帮助。

g = sns.relplot(x='hour', y="n",
                 col="w_day", hue="Zone",
                 kind="scatter", ci=95, data=df_1, col_order=col_order)

axes = g.axes.flatten()
axes[0].set_title("Monday")
axes[1].set_title("Tuesday")
axes[2].set_title("Wednesday")
axes[3].set_title("Thursday")
axes[4].set_title("Friday")
axes[5].set_title("Saturday")
axes[6].set_title("Sunday")

axes[0].set_ylabel("Hourly N")
for ax in axes:
    ax.set_xlabel("Hour")

g.fig.suptitle('', 
               weight='semibold', 
               y= 1.06, 
               size='x-large')

plt.axhline(200, ls='--', linewidth=3, color='red')


plt.margins(x=0)
plt.subplots_adjust(hspace=0, wspace=0)

【问题讨论】:

    标签: python python-3.x matplotlib seaborn


    【解决方案1】:
    for ax in axes:
        ax.axhline(200, ls='--', linewidth=3, color='red')
    

    【讨论】:

    • 有没有办法将这条水平线添加到图例中?
    • @Hawklaz 不容易,不。因为relplot 使用FacetGrid,所以创建的图例与经典的matplotlib 内容不同。如果您针对自己的用例发布带有Minimal, Complete, and Verifiable example 的问题,有人可能会找到解决方案
    猜你喜欢
    • 2019-02-02
    • 2011-03-18
    • 2019-05-29
    • 2015-09-14
    • 1970-01-01
    • 2020-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多