關於Matplotlib中No module named 'matplotlib.finance'的解決辦法


最近在研究量化分析,需要用到matplotlib中的一個庫,輸入
from matplotlib.finance import quotes_historical_yahoo_ohlc, candlestick_ohlc
發現有報錯,仔細勘查后發現有兩個問題,一個是matplotlib模塊已經剔除了,所以得額外再安裝,另外雅虎的數據接口在寫此文時還未恢復
對前者的解決有兩種方法

 

方法1:
1. 從github上下載mpl_finance module, 其中github網址:https://github.com/matplotlib/mpl_finance .
2. 通過命令安裝下載好的mpl_finance模塊,即:
python setup.py install

方法2:
pip install https://github.com/matplotlib/mpl_finance/archive/master.zip

 

 

 我用的是后者可以運行,所用的那行代碼替換成

from mpl_finance import candlestick_ohlc
而對於后者可以采用tushare的接口來調用


下面附一個實戰案例,你可以借此測試自己的庫是否安裝完成

 

 

 

# 實現K線圖繪制
import matplotlib.pyplot as plt
import matplotlib
import pandas as pd
from mpl_finance import candlestick_ochl

data = pd.read_hdf("./stock_plot/day_close.h5")[:100]
data1 = pd.read_hdf("./stock_plot/day_close.h5")[:100]
data2 = pd.read_hdf("./stock_plot/day_high.h5")[:100]
data3 = pd.read_hdf("./stock_plot/day_low.h5")[:100]

day = pd.concat([data["000001.SZ"],data1["000001.SZ"], data2["000001.SZ"], data3["000001.SZ"]], axis=1)

day.columns = ["open", "close", "high", "low"]
day = day.reset_index().values


# 畫圖
fig, axes = plt.subplots(nrows=1, ncols=1, figsize=(20,8), dpi=80)

# 第一個參數axes
candlestick_ochl(axes, day, width=0.3, colorup="r", colordown="g")
plt.show()


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM