在我的数据集中,我有一个Price
列用于房价,还有5个虚拟列用于城市中的不同位置。我要做的是用不同的颜色在散点图上显示数据点。
例如,在一个包含所有房屋价格的散点图上,我想要:
dummy1
表示Area1
中的房屋等于1时,所有价格点均为红色。dummy2
表示房屋位于Area2
等于2时,所有价格点均为蓝色。,依此类推,直到最后一列。如何创建该图?我可以使用plt.scatter()
创建没有颜色的散点图,但是不知道如何添加颜色代码。
答案 0 :(得分:0)
看看matplotlib.pyplot.scatter
的文档,其中描述了参数c
,可以是
一系列长度为n的颜色规范。
这里是一个示例,该示例创建100个随机x
和y
数据点。如果y
的值超过5
,则该点将为蓝色,否则为c
列表中指定的红色。
import matplotlib.pyplot as plt
import random
x = list(range(100))
y = [random.randint(0, 10) for _ in range(len(x))]
c = ["b" if y > 5 else "r" for y in y]
plt.scatter(x, y, c=c)
plt.show()
输出将如下所示: