Sla*_*ast 3 matplotlib python-3.x pandas
我有这个代码:
import pandas as pd
from pandas import datetime
from pandas import DataFrame as df
import matplotlib
from pandas_datareader import data as web
import matplotlib.pyplot as plt
import datetime
start = datetime.date(2016,1,1)
end = datetime.date.today()
stock = 'fb'
fig = plt.figure(dpi=1400)
data = web.DataReader(stock, 'yahoo', start, end)
fig, ax = plt.subplots(dpi=720)
data['vol_pct'] = data['Volume'].pct_change()
data.plot(y='vol_pct', ax = plt.gca(), title = 'this is the title \n second line')
ax.set(xlabel="Date")
ax.legend(loc='upper center', bbox_to_anchor=(0.32, -0.22), shadow=True, ncol=2)
plt.savefig('Test')
Run Code Online (Sandbox Code Playgroud)
在图的底部,您可以看到图例被删除。在我正在处理的不同代码的另一个图中,ylabel当我使用保存图时,甚至也被剪切了plt.savefig('Test')。我该如何解决这个问题?
Ell*_*ins 13
这是一个长期存在的问题,.savefig()它在设置边界之前不检查图例和轴位置。通常,我用以下bbox_inches论点来解决这个问题:
plt.savefig('Test', bbox_inches='tight')
Run Code Online (Sandbox Code Playgroud)
这与调用类似plt.tight_layout(),但会考虑所有相关艺术家,而tight_layout通常会将一些对象拉入框架,同时切断新对象。
我必须告诉 pyplot 在超过一半的时间里保持紧密,所以我不确定为什么这不是默认行为。
| 归档时间: |
|
| 查看次数: |
8836 次 |
| 最近记录: |