以下是一个示例的解决方法,可以按颜色绘制分类:
import matplotlib.pyplot as plt
# 定义数据点的颜色和分类
colors = ['red', 'blue', 'green', 'yellow']
categories = ['A', 'B', 'C', 'D']
# 生成示例数据
x = [1, 2, 3, 4, 5]
y = [2, 4, 1, 3, 5]
labels = ['A', 'B', 'D', 'C', 'A']
# 绘制散点图
for i in range(len(x)):
category = labels[i]
color_index = categories.index(category)
plt.scatter(x[i], y[i], color=colors[color_index])
# 设置图例
legend_elements = [plt.Line2D([0], [0], marker='o', color='w', label='A', markerfacecolor='red', markersize=10),
plt.Line2D([0], [0], marker='o', color='w', label='B', markerfacecolor='blue', markersize=10),
plt.Line2D([0], [0], marker='o', color='w', label='C', markerfacecolor='green', markersize=10),
plt.Line2D([0], [0], marker='o', color='w', label='D', markerfacecolor='yellow', markersize=10)]
plt.legend(handles=legend_elements)
# 显示图形
plt.show()
这段代码首先定义了数据点的颜色和分类,然后生成了示例数据。然后,使用 for 循环遍历数据点,并根据分类找到对应的颜色,然后使用 plt.scatter()
绘制散点图。
最后,使用 plt.Line2D()
定义图例元素,并使用 plt.legend()
将图例添加到图形中。最后使用 plt.show()
显示图形。
上一篇:按颜色和ID进行选择
下一篇:按颜色将乌龟分组