簡體   English   中英

在iPython / pandas中繪制多行產生多個圖

[英]Plotting Multiple Lines in iPython/pandas Produces Multiple Plots

我試圖了解matplotlib的狀態機模型,但是在嘗試在單個繪圖上繪制多條線時遇到錯誤。 根據我的理解,下面的代碼應該生成一個包含兩行的圖:

import pandas as pd
import pandas.io.data as web
aapl = web.get_data_yahoo('AAPL', '1/1/2005')

# extract adjusted close
adj_close = aapl.loc[:, ['Adj Close']]

# 2 lines on one plot
hold(False)
adj_close.resample('M', how='min').plot()
adj_close.resample('M', how='max').plot()

事實上,我得到三個數字:首先是空白數字,然后是兩個數字,每個數字一行。

空白情節第一個情節第二個情節

知道我做錯了什么或我的系統上的設置可能配置錯誤了嗎?

您可以使用matplotlibs pyplot包預先創建軸對象,然后將圖附加到此軸對象:

import pandas as pd
import pandas.io.data as web
import matplotlib.pyplot as plt

aapl = web.get_data_yahoo('AAPL', '1/1/2005')

# extract adjusted close
adj_close = aapl.loc[:, ['Adj Close']]

# 2 lines on one plot
#hold(False)

fig, ax = plt.subplots(1, 1)
adj_close.resample('M', how='min').plot(ax=ax)
adj_close.resample('M', how='max').plot(ax=ax)

情節示例

或者,您可以將兩個系列連接到amx 2 DataFrame並繪制數據框:

s1 = adj_close.resample('M', how='min')
s2 = adj_close.resample('M', how='max')
df = pd.concat([s1, s2], axis=1)
df.plot()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM