【发布时间】:2021-05-31 04:54:25
【问题描述】:
正如标题所述,我有一些随机的 X 和 Y 数据点:
+-----+-----+
| P1X | P1Y |
+-----+-----+
| 1 | 2 |
| 2 | 3 |
| -1 | 4 |
+-----+-----+
d = {'P1X': [1,2,-1], 'P1Y': [2,3,4]}
df_data = pd.DataFrame(data=d)
然后我使用这样的散点图绘制它们:
import seaborn as sns
from matplotlib import pyplot as plt
ax = sns.scatterplot(data=df_data, x='P1X', y='P1Y', legend=False)
plt.show()
现在如何在每个点水平和垂直绘制一条黑线? 任何和所有的答案都值得赞赏!
【问题讨论】:
-
完全跨越轴的线?所以你会在 -1、1、2 处有 3 条垂直线,在 4、3、2 处有 3 条水平线,或者就像更小的十字准线?
-
axvline 和 axhline 怎么样?我想这就是你要找的。两者都需要各自的 y-x 值和最小值/最大值。您可以根据您拥有的数据计算这两个值。
-
@ALollz 是的,这就是我想要的。如果 seaborn 适合它,我想知道,但这是我的起点。我不太擅长绘制东西哈哈
-
@Sandertjuhh 我计划为我的实际数据设置 xlim 和 ylim 的限制,我是否将其用于最小值和最大值?
-
@Sandertjuhh 所以我正在研究 axvline 和 axhline。看起来不需要熊猫系列。我是否只需要遍历我的 df 并为每对点调用它?还是有比循环更好的方法?
标签: python pandas matplotlib seaborn scatter-plot