【问题标题】:plotting pandas points with different colors用不同颜色绘制熊猫点
【发布时间】:2017-05-11 18:18:13
【问题描述】:

我有一个包含两列 ['frequency','color'] 的 pandas 数据框,它看起来像这样:

 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

代码有什么问题?

【问题讨论】:

  • 你的代码对我来说运行没有错误。
  • 出现红色和绿色的颜色了吗?

标签: pandas matplotlib


【解决方案1】:

下图

由以下代码产生:

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()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-24
    • 1970-01-01
    • 1970-01-01
    • 2019-05-17
    相关资源
    最近更新 更多