使用python,我创建了一个包含四列(date,df1,df2,df3)的pandas数据帧。 'date'系列是数据框的索引。
我正在尝试创建两个子图(读取:两个堆叠图),将'日期'系列共享为x轴。
我想在第一个子图上绘制series1和series 2,使用颜色:黑色和蓝色。
在第二个子图中,我想绘制series3,使用颜色:红色。
有人知道如何使用pandas或matplotlib进行此操作吗?
提前致谢!
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
file1 = "LNQ2014LNV2014"
file2 = "LNV2014LNZ2014"
file3 = "LNQ2014LNV2014LNV2014LNZ2014"
df1 = pd.read_csv("%s.csv" % (file1), index_col = 0)
df1 = df1.drop(df1.columns[[0,1,2,4,5]], axis = 1)
df1.columns = ["%s" % file1]
df2 = pd.read_csv("%s.csv" % (file2), index_col = 0)
df2 = df2.drop(df2.columns[[0,1,2,4,5]], axis = 1)
df2.columns = ["%s" % file2]
df3 = pd.read_csv("%s.csv" % (file3), index_col = 0)
df3 = df3.drop(df3.columns[[0,1,2,4,5]], axis = 1)
df3.columns = ["%s" % file3]
dfresult = pd.concat([df1, df2, df3], axis = 1, join = "inner")
plt.subplot(211)
plt.plot(df1, color = "black")
plt.plot(df2, color = "blue")
plt.subplot(212)
plt.plot(df3, color = "red")
plt.show()
答案 0 :(得分:0)
您需要使用子图功能。这会创建两个垂直堆叠的图,如您所述:
from matplotlib import pylab as pl
pl.subplot(211)
pl.plot(date, series1, color='black')
pl.plot(date, series2, color='blue')
pl.subplot(212)
pl.plot(date, series3, color='red')
pl.show()