赞
踩
在TF学习过程中,使用jupyter notebook,plt绘制序列并显示网格。但是在运行过程中,发现,代码可以正常运行,但是网格无法显示。
完整代码如下:
- import matplotlib.pyplot as plt
- import numpy as np
-
- def plot_series(time, series, format="-", start=0, end=None, label=None):
- plt.plot(time[start:end], series[start:end], label=label)
- plt.xlabel("Time")
- plt.ylabel("Value")
- if label:
- plt.legend(fontsize=14)
- plt.grid=True
-
- time = np.arange(4 * 100 + 1)
- series = np.ones((4 * 100 + 1)
-
- plt.figure(figsize=(10,6))
- plot_series(time, series)
- plt.show()
绘制如下:
网格未显示。
查阅资料后,对plt.grid进行修改
- def plot_series(time, series, format="-", start=0, end=None, label=None):
- plt.plot(time[start:end], series[start:end], label=label)
- plt.xlabel("Time")
- plt.ylabel("Value")
- if label:
- plt.legend(fontsize=14)
- plt.grid(True)
或者修改为
plt.grid(b='True')
会出现如下错误:
TypeError: 'bool' object is not callable
查阅资料,参考
plt绘图--‘str’ object is not callable 解决_南风慕雨的博客-CSDN博客https://blog.csdn.net/weixin_43725328/article/details/107788766matplotlib.pyplot.grid — Matplotlib 3.5.1 documentationhttps://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.grid.html感谢南风慕雨。
按照matplotlib文档的说明进行修改。
重启jupyter notebook内核(很关键)
具体代码修改如下:
plt.grid(visible='True')
需要补充的是,通过如下方式也可以执行网格显示,但是会提醒:
plt.grid(b='True')
- C:\Users\P14s\AppData\Local\Temp/ipykernel_7624/682568141.py:7: MatplotlibDeprecationWarning: The 'b' parameter of grid() has been renamed 'visible' since Matplotlib 3.5; support for the old name will be dropped two minor releases later.
- plt.grid(b='True')
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。