繁体   English   中英

Seaborn axvspan 改变 x 轴

[英]Seaborn axvspan alterating x-axis

我正在尝试创建一些散点图,其中 seaborn 每个 plot 的特定区域以红色突出显示。 但是,当我为 axvspan 添加代码时,它会更改 x 轴。 这是在应用 axvspan 之前绘图的样子。

在此处输入图像描述

当我为 axvpsan 应用该行时:

fig, (ax0, ax1) = plt.subplots(2,1, figsize=(5,10))

ax0.axvspan("0.4", "0.8", color='red', alpha=0.3, label ='Problem Area')
sns.scatterplot(x='Values_1', y='Values_2', data=df3, color='green', ax=ax0)
sns.scatterplot(x='Values_3', y='Values_4', data=df3, color='green', ax=ax1)
plt.show()

它看起来像这样发送:

在此处输入图像描述

最终,红色部分只需要覆盖 0.4 到 0.7 之间的数据,但通过改变 x 轴,它最终覆盖了所有数据。

有什么建议吗?

意外行为是由于将xminxmax arguments 传递给matplotlib.pyplot.axvspan作为str而不是作为float

import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np
import pandas as pd 

# generate data
rng = np.random.default_rng(12)
df3 = pd.DataFrame({"Values_2": rng.random(100), "Values_1": np.linspace(0., 0.6, 100)})

fig, ax0 = plt.subplots(1,1, figsize=(6, 4))
ax0.axvspan(0.4, 0.8, color='red', alpha=0.3, label ='Problem Area')

sns.scatterplot(x='Values_1', y='Values_2', data=df3, color='green', ax=ax0)
plt.show()

这给出:

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM