Python 如何在matplotlib finance中保存烛台图

Python 如何在matplotlib finance中保存烛台图,python,matplotlib,Python,Matplotlib,我制作了一些python脚本来使用mpl_finance创建烛台图。我已经成功地制作了烛台图表,但为了我的生命,我找不到一种方法将图表保存到png。 这是我的密码: !pip install yfinance !pip install mplfinance !pip install bokeh !pip install mpl-finance # https://towardsdatascience.com/trading-toolbox-03-ohlc-charts-95b48bb9d748

我制作了一些python脚本来使用mpl_finance创建烛台图。我已经成功地制作了烛台图表,但为了我的生命,我找不到一种方法将图表保存到png。 这是我的密码:

!pip install yfinance
!pip install mplfinance
!pip install bokeh
!pip install mpl-finance
# https://towardsdatascience.com/trading-toolbox-03-ohlc-charts-95b48bb9d748
from mplfinance.original_flavor import candlestick_ohlc
import mplfinance as fplt

import yfinance as yf
import datetime as dt
import pandas as pd
from pandas_datareader import data as pdr 
from datetime import timedelta
import matplotlib.dates as mdates 
from bokeh.plotting import figure,show,output_file
import matplotlib.pyplot as plt
import mpl_finance as mpf #

yf.pdr_override()
start = dt.datetime.now() - timedelta(60)
now = dt.datetime.now()

stock = "BAC"

df = pdr.get_data_yahoo(stock ,start , now)

# Convert yahoo finance data to readable to mplfinance
df.index = pd.to_datetime(df.index)
dvalues = df[['Open','High', 'Low','Close']].values.tolist()

pdates = mdates.date2num(df.index)
ohlc = [ [pdates[i]] + dvalues[i] for i in range(len(pdates)) ]

plt.style.use('fivethirtyeight')
fig, ax = plt.subplots(figsize = (16,12))


mpf.candlestick_ohlc(ax, ohlc, width=0.4, colorup='green', colordown='red') # i want to save this chart. 
plt.savefig('amzn.png') # i have tried this but not avail

只需使用新的mplfinance:

导入mplfinance作为强积金
作为pd进口熊猫
将日期时间导入为dt
将U数据读取器作为pdr导入
now=dt.datetime.now()
开始=现在-dt.timedelta(60)
stock=“AMZN”
filename=stock.lower()+'.png'
df=pdr.get_data_yahoo(股票,开始,现在)
plot(df,type='candle',style='yahoo',savefig=filename)
结果:

您使用的是什么环境?另外,你使用的熊猫是什么版本?当我在conda环境中使用代码时,这就起作用了。更改为不使用
中的
,则无需将mpl\u finance作为mpf导入(您可以直接使用
candlestick\u ohlc
)。另外,您在这个特定脚本中也没有使用bokeh,因此最好不要使用它。