如果注釋了plt.show()可以顯示出紅線,但是無法更新學習(紅線無法動態擬合),不注釋plt.show()連紅線都無法顯示,什么原因,還是我其他的地方有錯


uj5u.com熱心網友回復:
第一張圖貼錯了,不好意思uj5u.com熱心網友回復:
這個是老版本的,改一下,不用figure建視窗,直接用plt.scatter(x_data,y_data)創建圖,再plt.show()查看,然后在打開互動式模式plt.ion()。然后在for回圈訓練里把視窗物件ax換成plt.plot(......),再寫延遲代碼。具體如下:plt.scatter(x_data,y_data)
plt.show()
plt.ion()
#學習訓練1000步
for i in range(1000):
#training
sess.run(train_step,feed_dict={xs:x_data,ys:y_data})
if i%50==0:
#看訓練資料學習改進
# print(1-sess.run(loss,feed_dict={xs:x_data,ys:y_data}))
prediction_value = sess.run(prediction, feed_dict={xs: x_data})
plt.cla()
plt.scatter(x_data, y_data)
lines = plt.plot(x_data, prediction_value, 'r-', lw=5)
plt.pause(0.5)
uj5u.com熱心網友回復:
%matplotlib,運行之后就可以了,圖片就不在notebook里顯示,而是跳出一個視窗顯示,這樣就可以動態顯示了。如果想切換回圖片在notebook里顯示,就運行%matplotlib inline。uj5u.com熱心網友回復:
發現PYCharm顯示動態圖需單獨彈出視窗,具體設定方法如下:File->Settings->Tools->Python scientific->取消Show plots in tool window前的√
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/38597.html
下一篇:微信個人號介面
