基于第三列中的值的颜色散点图点?
Color scatter plot points based on a value in third column?
我目前正在绘制基于两列数据的散点图。但是,我想根据第三列中的 class 标签为数据点着色。
我第三列中的标签是 1,2 或 3。我将如何根据第三列中的值为散点图点着色?
plt.scatter(waterUsage['duration'],waterUsage['water_amount'])
plt.xlabel('Duration (seconds)')
plt.ylabel('Water (gallons)')
scatter
函数很高兴地接受了一个表示颜色的数字列表。如果需要,您也可以使用颜色图(但不是必须):
plt.scatter(waterUsage['duration'], waterUsage['water_amount'],\
c=waterUsage['third_column'], cmap=plt.cm.autumn)
在您的字典中添加另一个词条"color"
def addcolor(b):
a=b
for x in range(len(a['third_column'])):
if a['third_column'][x]==1: a['color'][x]='rosybrown'
elif a['third_column'][x]==2: a['color'][x]='papayawhip'
elif a['third_column'][x]==3: a['color'][x]='chartreuse'
return a
waterUsage = addcolor(waterUsage)
plt.scatter(waterUsage['duration'],
waterUsage['water_amount'],
c=waterUsage['color'])
matplotlib 接受灰度、rgb、十六进制和 html 颜色:
http://matplotlib.org/api/colors_api.html
html 颜色列表,按组:
我目前正在绘制基于两列数据的散点图。但是,我想根据第三列中的 class 标签为数据点着色。
我第三列中的标签是 1,2 或 3。我将如何根据第三列中的值为散点图点着色?
plt.scatter(waterUsage['duration'],waterUsage['water_amount'])
plt.xlabel('Duration (seconds)')
plt.ylabel('Water (gallons)')
scatter
函数很高兴地接受了一个表示颜色的数字列表。如果需要,您也可以使用颜色图(但不是必须):
plt.scatter(waterUsage['duration'], waterUsage['water_amount'],\
c=waterUsage['third_column'], cmap=plt.cm.autumn)
在您的字典中添加另一个词条"color"
def addcolor(b):
a=b
for x in range(len(a['third_column'])):
if a['third_column'][x]==1: a['color'][x]='rosybrown'
elif a['third_column'][x]==2: a['color'][x]='papayawhip'
elif a['third_column'][x]==3: a['color'][x]='chartreuse'
return a
waterUsage = addcolor(waterUsage)
plt.scatter(waterUsage['duration'],
waterUsage['water_amount'],
c=waterUsage['color'])
matplotlib 接受灰度、rgb、十六进制和 html 颜色:
http://matplotlib.org/api/colors_api.html
html 颜色列表,按组: