我想添加一条水平线,即一些绘图的“目标”线:带状图、箱线图和 fiddle 图,以显示理想值数据(或理想情况下的范围)。
这个 R 示例 ( Add multiple horizontal lines in a boxplot ) - 第一个图像 - 基本上就是它(尽管我会做一些格式化以使其更像样)。
R abline() equivalent in Python对我没有帮助(或者我还没有弄清楚如何),因为我使用的是分类数据,所以我只想从本质上定义(例如)y=3 并绘制它。 我的代码(下面)工作正常,我只是不知道如何添加一行。
fig, ax = plt.subplots(nrows=4,figsize=(20,20))
sns.violinplot(x="Wafer", y="Means", hue='Feature',
data=Means[Means.Target == 1], ax=ax[0])
sns.violinplot(x="Wafer", y="Means", hue='Feature',
data=Means[Means.Target == 3], ax=ax[1])
sns.boxplot(x="Feature", y="Means",
data=Means, linewidth=0.8, ax=ax[2])
sns.stripplot(x="Feature", y="Means", hue='Wafer',
data=Means, palette="plasma", jitter=0.1, size=5.5, ax=ax[3])
非常感谢任何帮助。
请您参考如下方法:
假设您不想在高度 y 和从 x1 到 x2 处绘制一条水平线,其中 x1 和 x2 是您的实际 x 数据值。以下只是您可以执行此操作的几种可能方法中的三种:
首先:
ax.hlines(y, x1, x2)
第二个:
plt.plot([x1, x2], [y, y])
第三个(x1 和 x2 现在在 0 表示最左边和 1 表示之间的相对/分数坐标中最右边):
ax.axhline(y, x1, x2)
