Pandas 用不同颜色绘制点

Pandas 用不同颜色绘制点,pandas,matplotlib,Pandas,Matplotlib,我有一个由两列组成的熊猫数据框['frequency','color',],它看起来像这样: name frequency color 0 351 r 1 122 r 2 30 g 3 85 r 4 195 r 5 88 g 6 130 r 7 85 r 8 41 r 9 9 g 我想根据颜色绘制排序的“频率”。我试过这个: plt.scatter(y=np.sort(data['frequen

我有一个由两列组成的熊猫数据框['frequency','color',],它看起来像这样:

 name  frequency  color
0   351   r
1   122   r
2   30    g
3   85    r
4   195   r
5   88    g
6   130   r
7   85    r
8   41    r
9   9     g
我想根据颜色绘制排序的“频率”。我试过这个:

plt.scatter(y=np.sort(data['frequency']),x=range(len(data['frequency'])),c=np.sort(data['color']))
我得到了以下错误:

ValueError:to_rgba:Invalid rgba arg“['r']”to_rgb:Invalid rgb arg “('r',)”序列长度为1;必须是3或4

代码中有什么错误?

下图

由以下代码生成:

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

frequency = [351,122,30,85,195,88,130,85,41,9]
color = ["r","r","g","r","r","g","r","r","r","g"]
df = pd.DataFrame( {"frequency" : frequency, "color" : color})
df.sort_values("frequency", inplace=True)

plt.scatter(x=range(len(df)), y= df["frequency"], c = df["color"])
plt.show()
下图

由以下代码生成:

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

frequency = [351,122,30,85,195,88,130,85,41,9]
color = ["r","r","g","r","r","g","r","r","r","g"]
df = pd.DataFrame( {"frequency" : frequency, "color" : color})
df.sort_values("frequency", inplace=True)

plt.scatter(x=range(len(df)), y= df["frequency"], c = df["color"])
plt.show()

您的代码对我运行时没有错误。红色和绿色的颜色出现了吗?您的代码对我运行时没有错误。红色和绿色的颜色出现了吗?