Pandas 用不同颜色绘制点
我有一个由两列组成的熊猫数据框['frequency','color',],它看起来像这样: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
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()
您的代码对我运行时没有错误。红色和绿色的颜色出现了吗?您的代码对我运行时没有错误。红色和绿色的颜色出现了吗?