查看自己后端显示工具:
notebook运行:
%pylab
看显示是什么?
我的:
于是:%matplotlib qt5,代码如下:
import math
import random
import numpy as np
import matplotlib
import matplotlib.pyplot as plt
%matplotlib qt5
# set up matplotlib
is_ipython = 'inline' in matplotlib.get_backend()
if is_ipython:
from IPython import display
plt.ion()
def plot_durations(i, y1, y2):
plt.figure(2)
# plt.clf() 此时不能调用此函数,不然之前的点将被清空。
plt.subplot(211)
plt.plot(i, y1, '.')
plt.subplot(212)
plt.plot(i, y2, '.')
plt.pause(0.001) # pause a bit so that plots are updated
if is_ipython:
display.clear_output(wait=True)
display.display(plt.gcf())
x = np.linspace(-10,10,500)
y = []
for i in range(len(x)):
y1 = np.cos(i/(3*3.14))
y2 = np.sin(i/(3*3.14))
# y.append(np.array([y1,y2])) #保存历史数据
plot_durations(i, y1, y2)
但是图还是显示在外面,只有显示结束之后才会停留在notebook里面。结果未知。
# set up matplotlib
is_ipython = 'qt5' in matplotlib.get_backend() #这里改成qt5效果还是如上
if is_ipython:
from IPython import display