是否有可能在Python ggplot上绘制多线图?

Hug*_*ugo 3 python pandas python-ggplot

我需要在python ggplot上绘制3列Pandas数据帧,并使用相同的索引.那可能吗?

谢谢

chr*_*isb 7

我假设你想要ggplot中的东西在matplotlib中复制这样的东西.

import pandas as pd
df = pd.DataFrame({'a': range(10), 'b': range(5,15), 'c': range(7,17)})
df.plot()
Run Code Online (Sandbox Code Playgroud)

ggplot期望数据采用"长"格式,因此您需要进行一些重塑melt.它目前还不支持绘制索引,因此需要将其制作成列.

from ggplot import ggplot, geom_line, aes
import pandas as pd
df = pd.DataFrame({'a': range(10), 'b': range(5,15), 'c': range(7,17)})

df['x'] = df.index
df = pd.melt(df, id_vars='x')

ggplot(aes(x='x', y='value', color='variable'), df) + \
      geom_line()
Run Code Online (Sandbox Code Playgroud)