如何使用第三个变量按颜色分隔散点图?

问题描述 投票:0回答:1

我的问题与[python - scatter plot with dates and 3rd variable as color]中的问题非常相似>

但是我希望颜色根据我的第3个变量中的3组值而变化。

例如:

#my 3rd variable consists of a column with these planet radii values:

    radii
1    70
2     6
3    54
4     3
5    0.3
...

并且我希望根据半径> 8、4 >

我尝试使用简单的代码,在另一个问题中提出:

db=table_with_3_columns()
x=db['column a']
y=db['column b']
z=db['radii']
plt.scatter(x,y,c=z,s=30)

但是我不知道如何为z内的不同集合指定'c'参数。我也尝试过使用:

a=[]
for i in db['radii']
    if i>8:
       a['bigradii']=i
    elif i<4:
       a['smallradii']=i
    elif i<8 and i>4:
       a['mediumradii']=i
    return a

但是我不知道该如何进行。

结果将是分散的点,这些点由第三列“半径”中的值所引导的颜色分隔开,但是我使用第一个代码得到的全部是黑色的点,或者,使用第二个代码告诉我我是一个字符串,我不能把它放在列表上:(

我该如何实现?

我的问题与以下情况非常相似:python-以日期和第3个变量作为颜色的散点图,但我希望颜色根据第3个变量中的3组值而变化。例如:#...

python matplotlib scatter astronomy
1个回答
0
投票

我认为您应该做的是:

  1. 创建一个空的list,稍后将在分散函数中将其传递给'c'。
© www.soinside.com 2019 - 2024. All rights reserved.