python - 无法获取绘图 /usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py:3: MatplotlibDeprecationWarning:
问题描述
date high low close Central Bottom Top_Central Resistance_1 Support_1 Central_SMA Bottom_Central_SMA Top_Central_SMA
1 2010-01-05 142.45 136.00 141.85 140.100000 139.225 140.975000 NaN NaN NaN NaN NaN
2 2010-01-06 142.70 140.40 141.00 141.366667 141.550 141.183333 143.266667 138.891667 140.733333 140.3875 141.079167
3 2010-01-07 142.65 140.05 141.60 141.433333 141.350 141.516667 142.575000 140.125000 141.400000 141.4500 141.350000
4 2010-01-08 142.40 139.85 141.90 141.383333 141.125 141.641667 142.866667 140.291667 141.408333 141.2375 141.579167
5 2010-01-11 146.00 141.95 145.35 144.433333 143.975 144.891667 144.916667 141.616667 142.908333 142.5500 143.266667
上面的数据框是我的代码中的枢轴数据框。
import matplotlib.dates as mdates
from matplotlib.dates import date2num
import matplotlib.pyplot as plt
Graph=pivot.copy()# Make a copy of pivot
try:
Graph.reset_index(inplace=True)
Graph['date'] = Graph['date'].apply(date2num)
except:
pass
fig= plt.figure()
ax1= fig.add_subplot(111)
ax2= fig.add_subplot(111)
ax3= fig.add_subplot(111)
ax1.xaxis_date()
ax1.xaxis.set_major_formatter(mdates.DateFormatter('%d-%m-%Y'))
ax2.plot(Graph.date, Graph['Resistance_1'], label='R1')
ax3.plot(Graph.date, Graph['Support_1'], label='S1')
plt.show()
当我运行上面的代码时,我收到以下错误。
/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py:3: MatplotlibDeprecationWarning:
使用与先前轴相同的参数添加轴当前重用早期实例。在未来的版本中,将始终创建并返回一个新实例。同时,通过将唯一标签传递给每个轴实例,可以抑制此警告并确保未来的行为。
/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py:4: MatplotlibDeprecationWarning:
使用与先前轴相同的参数添加轴当前重用早期实例。在未来的版本中,将始终创建并返回一个新实例。同时,通过将唯一标签传递给每个轴实例,可以抑制此警告并确保未来的行为。
如何解决这个问题?
解决方案
使用与先前轴相同的参数添加轴当前重用早期实例。
此处所指的相同参数是“111”:
ax2= fig.add_subplot(111)
ax3= fig.add_subplot(111)
该行为在警告消息中指定:它不添加新图形,而是重用旧图形。因此,即使您可能想要指定 3,您也只有 1 个数字。我假设您需要查找 subplot 的语法并将其误认为不是。一种正确的使用方法是:
ax1= fig.add_subplot(131)
ax2= fig.add_subplot(132)
ax2.plot(a,b)
ax3= fig.add_subplot(133)
ax3.plot(b,a)
如果您想要 3 行图像,也可以使用 31X。
推荐阅读
- java - 为什么java使用AQS而不是本机互斥锁?
- html - 如何在不提交表单的情况下获取当前日期时间
- flutter - 在 Flutter 中自定义 AutoComplete 小部件
- python - 如何重新发送验证电子邮件django restframework?
- flutter - Flutter中POST表单数据中的数组
- flutter - 如何从 Firestore 中的数组中获取特定项目
- flutter - Flutter:获取过去在 iOS 上的购买记录
- arrays - 将二维数组行地址传递给一维数组以供将来使用
- git - Git mv 无法按预期工作(文件位置错误)
- python - 使用 Selenium 防止 AdblockPlus 页面打开