当我尝试在同一轴上绘制不同类型的图时,当我尝试在 jupyter 笔记本的不同单元格中绘制时,我没有得到所需的输出。当我尝试在同一个单元格中执行此操作时,我会得到不同的结果。我可以在 jupyter 笔记本中使用附加绘图更新轴吗? 为什么我不能在同一轴上绘制两个图?
我就期待这个
答案是你不能只在不同的单元格中使用
ax.plot()
。该活动绘图对象已关闭并显示。
您可以使用应用的手柄来调用子图的特定轴对象并修改其中的内容。然后你需要调用该图形来重新显示它,这将被修改。
我制作了一个在 Jupyter 笔记本中提供代码的示例,您可以在此处查看。实际对应的要点是here.
我将在这里总结一下:单元格 1 - 生成散点图的单元格
#based on https://stackoverflow.com/a/75562058/8508004
import numpy as np
x_data, y_data = np.repeat(np.linspace(0, 9, 100)[None,:], 2, axis=0) + np.random.rand(2, 100)*2
import matplotlib.pyplot as plt
fig, axs = plt.subplots(1,2, figsize=(12,3))
axs[0].scatter(x_data, y_data);
运行该单元格将显示散点图。单元格 2 - 将回归线添加到散点图并立即显示带有回归线的图
z = np.polyfit(x_data, y_data, 1)
p = np.poly1d(z)
axs[0].plot(x_data,p(x_data), '-', color= "red")
fig
接下来运行该单元格将显示现在添加了回归线的散点图。