Ale*_*llo 10 python matplotlib pandas
我有一个pandas数据框,其中包含日期作为索引和一些列:我想用2行绘制折线图(比如'ISP.MI'和'Ctrv'); 在x轴上,我需要'日期'
Ticker ISP.MI Daily returns Ctrv Inv_Am Giac_Media
Date
2016-01-01 2.90117 NaN 100.000000 100 100.0
2016-01-04 2.80159 -0.034927 196.507301 200 150.0
2016-01-05 2.85608 0.019263 300.292610 300 200.0
2016-01-06 2.77904 -0.027345 392.081255 400 250.0
2016-01-07 2.73206 -0.017050 485.396411 500 300.0
2016-01-08 2.72267 -0.003443 583.725246 600 350.0
Run Code Online (Sandbox Code Playgroud)
jez*_*ael 29
我认为最简单的是按子集选择列然后DataFrame.plot:
df[['ISP.MI','Ctrv']].plot()
Run Code Online (Sandbox Code Playgroud)
如果你不关心轴刻度:
plt.figure()
x = df['Date']
y1 = df['ISP.MI']
y2 = df['Ctrv']
plt.plot(x,y1)
plt.plot(x,y2)
Run Code Online (Sandbox Code Playgroud)
如果你关心它:
fig, ax1 = plt.subplots()
x = df['Date']
y1 = df['ISP.MI']
y2 = df['Ctrv']
ax2 = ax1.twinx()
ax1.plot(x, y1, 'g-')
ax2.plot(x, y2, 'b-')
Run Code Online (Sandbox Code Playgroud)
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
d = {'x' : [1,2,3,4,5,6,7,8,9,10],
'y_one' : np.random.rand(10),
'y_two' : np.random.rand(10)}
df = pd.DataFrame(d)
df.plot('x',y=['y_one','y_two'])
plt.show()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
37150 次 |
| 最近记录: |