关于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()

posted @   星涅爱别离  阅读(10187)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示