gpt4 book ai didi

python - 如何根据列变量更改标记的形状?

转载 作者:行者123 更新时间:2023-12-01 03:40:38 25 4
gpt4 key购买 nike

我正在尝试在 python 中为 csv 文件创建散点图,其中包含 4 列 xyTLL。我应该绘制 xy 的图,并根据 TL 中的 class ID 更改标记的颜色> 我在下面的代码中实现的列。

import pandas as pd    
from matplotlib import pyplot as plt
import numpy as np

df=pd.read_csv('knnDataSet.csv')
df.columns=['SN','x','y','TL','L']

color=['red','green','blue']

groups = df.groupby('TL')

fig, ax = plt.subplots()

for name, group in groups:
ax.plot(group.x, group.y, marker='o', linestyle='', ms=12, label=name)

ax.legend()
plt.show()

此外,我需要根据标记在 L 列中是否有标签来更改形状,但我不知道如何更新我的代码以满足此要求。

以下是 knnDataSet.csv 文件的链接: knnDataSet.csv

最佳答案

你可能想要这样的东西:

import pandas as pd
from matplotlib import pyplot as plt
import numpy as np

df=pd.read_csv('knnDataSet.csv')
df.columns=['SN','x','y','TL','L']
color=['red','green','blue']

groups = df.groupby('TL')

fig, ax = plt.subplots(figsize=(11,8))

for name, group in groups:
for x in group.values:
if np.isnan(x[4]):
ax.plot(x[1], x[2], marker='x', linestyle='', ms=12)
else:
ax.plot(x[1], x[2], marker='o', linestyle='', ms=12)

#ax.legend()
plt.show()

如果 L 列中的标签定义,则标记将为 X
如果 L 列中的标签 IS 已定义,则标记将为 O

输出: enter image description here

关于python - 如何根据列变量更改标记的形状?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39692554/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com