我在做一個比賽需要使用到LSTM模型對時間序列進行預(yù)測,然后在github代碼中經(jīng)常會看到這樣的代碼:
import numpy
import matplotlib.pyplot as plt
from pandas import read_csv
import math
from keras.models import Sequential
from keras.layers import Dense
from keras.layers import LSTM
from sklearn.preprocessing import MinMaxScaler
from sklearn.metrics import mean_squared_error
%matplotlib inline
其中最后一句%matplotlib inline比較奇怪酒甸,而且無論你是用哪個python的IDE如spyder或者pycharm,這個地方都會報錯浮声,顯示是invalid syntax(無效語法)虚婿。那為什么代碼里面還是會有這一句呢?原來是這樣的泳挥。
%matplotlib作用
- 是在使用jupyter notebook 或者 jupyter qtconsole的時候然痊,才會經(jīng)常用到%matplotlib,也就是說那一份代碼可能就是別人使用jupyter notebook 或者 jupyter qtconsole進行編輯的屉符。關(guān)于jupyter notebook是什么剧浸,可以參考這個鏈接:[Jupyter Notebook介紹、安裝及使用教程][1]
- 而%matplotlib具體作用是當(dāng)你調(diào)用matplotlib.pyplot的繪圖函數(shù)plot()進行繪圖的時候矗钟,或者生成一個figure畫布的時候唆香,可以直接在你的python console里面生成圖像。
而我們在spyder或者pycharm實際運行代碼的時候吨艇,可以直接注釋掉這一句躬它,也是可以運行成功的。如下示例:
fig = plt.figure(facecolor='white')
ax = fig.add_subplot(111)
plot運行截圖
如圖所示东涡,生成了一個帶坐標(biāo)軸的figure對象冯吓,并且畫布顏色是白色的。