Matplotib Finance (mplfinance) 格式化图表轴未使用 mpf.plot()

问题描述

MPL 财务很棒,但是我似乎无法调整轴的格式。在图像中,我只想显示日期,而不显示 00:00 时间。还有价格,我想添加一个 $ 货币和小数位(变量)。

import pandas as pd
import mplfinance as mpf

df = pd.read_csv(csv)
df.date = pd.to_datetime(df.date)
cols = ['date','open','high','low','close','volume']
df = df[cols]
df = df.sort_values(by=['date'],ascending=False)
df = df.set_index('date')

然后用(插入样式)调用mplfinance:

mpf.plot(df,type='candle',volume=True style= *style*)

生成以下图表,如果可能,我已突出显示我想更改的部分。

enter image description here

解决方法

对于日期格式,可以添加kwarg datetime_format,例如:

mpf.plot(df,type='candle',volume=True,style=s,datetime_format='%b %d')

对于 y 轴刻度标签,我建议您使用 kwarg ylabel='Price ($)' 或类似方法简单地调整 y 轴标签(而不是刻度标签)。


或者,如果您真的希望在每个刻度标签旁边有一个 $ 符号,您可以这样做:

from matplotlib.ticker import FormatStrFormatter

fig,axlist = mpf.plot(df,datetime_format='%b %d',returnfig=True)

axlist[0].yaxis.set_major_formatter(FormatStrFormatter('$%.2f'))

mpf.show()

默认样式的结果

enter image description here