Сгруппированный разброс участка в pandas - PullRequest
0 голосов
/ 04 мая 2020

Скажем, у меня есть эта таблица в кадре данных:

     DATE          SUNHOUR    YEAR
---  ----------  ---------  ------
281  2018-10-09       11.1    2018
 29  2018-01-30        6.5    2018
266  2018-09-24        6.2    2018
115  2018-04-26       13.4    2018
 69  2018-03-11        7.3    2018
158  2019-06-08       13.7    2019
287  2019-10-15        8.5    2019
177  2019-06-27       15.9    2019
136  2019-05-17       11.5    2019
 59  2019-03-01       10.1    2019

Это даст мне диаграмму рассеивания:

df.plot.scatter(x='DATE', y='SUNHOUR')

scatter

Теперь, когда я Посмотрите документацию , я прочитал, что параметр c может принимать имя столбца или положение, значения которого будут использоваться для окрашивания точек маркера в соответствии с цветовой картой. Так что я подумал это будет работать, чтобы иметь разные цвета для каждого года:

df.plot.scatter(x='DATE', y='SUNHOUR', c='YEAR')

Но это возвращает:

ValueError: 'c' argument must be a color, a sequence of colors, or a sequence of numbers, not ['2018' '2018' '2018' '2018' '2018' '2019' '2019' '2019' '2019' '2019']

Чего мне не хватает?

1 Ответ

0 голосов
/ 04 мая 2020

Согласно документации:

c : str, int or array_like, optional
    The color of each point. Possible values are:
    * A single color string referred to by name, RGB or RGBA code, for instance ‘red’ or ‘#a98d19’.
    * A sequence of color strings referred to by name, RGB or RGBA code, which will be used for each point’s color recursively. For instance [‘green’,’yellow’] all points will be filled in green or yellow, alternatively.
    * A column name or position whose values will be used to color the marker points according to a colormap.

Вы не можете давать только какие-либо значения, но столбец со значениями цветов (например, у вас будет столбец со значениями "зеленый", "красный", et c.

Для того, что вы пытаетесь сделать, посмотрите здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...