Я пытаюсь создать простой график с линиями, окрашенными в соответствии с факторной переменной, используя plotnine 0.6.0 в python 3.7.4.
import pandas as pd
import plotnine as pn
import datetime
# data
df = pd.DataFrame(
{'name': ('Eric', 'Eric', 'Eric', 'Eric', 'Eric', 'Eric', 'Nico', 'Nico',
'Nico', 'Nico', 'Nico', 'Nico', 'Sanne', 'Sanne', 'Sanne', 'Sanne',
'Sanne', 'Sanne'),
'date': (datetime.date(2013, 8, 15), datetime.date(2013, 8, 15),
datetime.date(2013, 8, 15), datetime.date(2013, 8, 16),
datetime.date(2013, 8, 16), datetime.date(2013, 8, 16),
datetime.date(2013, 8, 15), datetime.date(2013, 8, 15),
datetime.date(2013, 8, 15), datetime.date(2013, 8, 16),
datetime.date(2013, 8, 16), datetime.date(2013, 8, 16),
datetime.date(2013, 8, 15), datetime.date(2013, 8, 15),
datetime.date(2013, 8, 15), datetime.date(2013, 8, 16),
datetime.date(2013, 8, 16), datetime.date(2013, 8, 16)),
'altitude': ( 71, 68, 68, 92, 95, 104, 382, 197, 206, 157, 156, 157, 55,
54, 55, 65, 62, 73)
})
# summarize the data by date
summ = df.groupby(['name', 'date']).altitude.mean().reset_index(name = 'altitude')
# plot the data by "name"
pn.ggplot(mapping = pn.aes(x = 'date',
y = 'altitude',
color = 'name'),
data = summ) +\
pn.geom_line()
Этот код создает ожидаемый фон: ![enter image description here](https://i.stack.imgur.com/tAFW0.png)
Но выдает ошибку:
C:\Anaconda3\lib\site-packages\plotnine\geoms\geom_path.py:83:
PlotnineWarning: geom_path: Each group consist of only one observation.
Do you need to adjust the group aesthetic?
"group aesthetic?", PlotnineWarning)
Если удалить цветной аспект,
pn.ggplot(mapping = pn.aes(x = 'date',
y = 'altitude'),
data = summ) +\
pn.geom_line()
Я получаю:
![enter image description here](https://i.stack.imgur.com/OdjgT.png)
Я знаю, что моя проблема связана с этим , но я не хочу 1 строку. Я хочу разные строки для каждого name
.