seaborn - 在 seaborn 线图上为每个观察添加一个标记
问题描述
我有一个简单的数据框,我想用 seaborn/matplotlib 绘制:
STA# RUN# BIB# COURSE INTER 1 FINISH DAG
64 22 1 12 STRAIGHT-GLIDING 19,01 19.37 TRENING1
72 148 8 12 COURSE 2 19,08 19.44 TRENING1
74 204 11 12 COURSE 2 19,10 19.47 TRENING1
76 253 14 12 COURSE 2 19,13 19.49 TRENING1
79 186 10 12 COURSE 2 19,13 19.50 TRENING1
294 277 13 12 COURSE 1 18,33 18.68 TRENING2
297 283 14 12 COURSE 1 18,35 18.70 TRENING2
299 165 7 12 COURSE 1 18,37 18.71 TRENING2
300 243 11 12 COURSE 1 18,38 18.73 TRENING2
304 262 12 12 COURSE 1 18,42 18.76 TRENING2
308 102 4 12 COURSE 1 18,44 18.78 TRENING2
我设法使用 seaborn 的以下代码创建了一个线图:
g = sns.FacetGrid(df, hue="COURSE", col="DAG", palette="Set2")
g = g.map(sns.lineplot, "RUN#", "FINISH")
g.add_legend()
看起来不错,但我想要一个点来表示我除了线之外的每个观察结果。关于如何完成这项任务的任何想法?
解决方案
添加marker='o'
到调用lineplot
g = sns.FacetGrid(df, hue="COURSE", col="DAG", palette="Set2")
g = g.map(sns.lineplot, "RUN#", "FINISH", marker='o')
g.add_legend()