matplotlib - jupyter notebook matplotlib 显示绘图,然后在原图上绘图
问题描述
我想绘制一个带有两个轴的白色图,将其显示给用户,然后在带有两个轴的白色图中添加一条线,将其显示给用户,然后在该线上添加一些点,然后将其显示给用户。如果不一次又一次地复制代码,我怎么能做到这一点?
我现在正在做的是第一个代码块
import math
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline
fig = plt.figure(figsize=(5,5))
ax = plt.axes()
ax.set_xlabel('cat')
ax.set_ylabel('dog')
plt.title("Set of 2 animals")
plt.show()
然后在第二个代码块中
fig = plt.figure(figsize=(5,5))
ax = plt.axes()
x = np.linspace(0, 1.0, 1000)
ax.plot(x, 1.0-x,zorder = 0)
ax.set_xlabel('cat')
ax.set_ylabel('dog')
plt.title("Set of 2 animals")
plt.show()
然后在第三个代码块中
fig = plt.figure(figsize=(5,5))
ax = plt.axes()
x = np.linspace(0, 1.0, 1000)
ax.plot(x, 1.0-x,zorder = 0)
ax.set_xlabel('cat')
ax.set_ylabel('dog')
plt.title("Set of 2 animals")
p0 = 0.5
p1 = 0.5
color = "blue"
textd =0.05
ax.scatter([p0],[p1], color = color,zorder=1)
ax.text(p0+textd, p1+textd, 'tiger',color = color,zorder =2)
plt.show()
我正在寻找的是第一个代码块中的内容
import math
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline
fig = plt.figure(figsize=(5,5))
ax = plt.axes()
ax.set_xlabel('cat')
ax.set_ylabel('dog')
plt.title("Set of 2 animals")
plt.show()
然后在第二个代码块中
add line directly without duplicating the code for making axes
plt.show()
然后在第三个代码块中
add point directly without duplicating the code for making axes and lines
plt.show()
解决方案
更新:我实际上想出了答案。
def plot(step):
fig = plt.figure(figsize=(5,5))
ax = plt.axes()
ax.set_xlabel('cat')
ax.set_ylabel('dog')
plt.title("Set of 2 animals")
if step>=1:
x = np.linspace(0, 1.0, 1000)
ax.plot(x, 1.0-x,zorder = 0)
if step>=2:
p0 = 0.5
p1 = 0.5
color = "blue"
textd =0.05
ax.scatter([p0],[p1], color = color,zorder=1)
ax.text(p0+textd, p1+textd, 'tiger',color = color,zorder =2)
plot.show()
应该可以解决问题。
推荐阅读
- javascript - 有条件地在选项卡中渲染组件
- java - JavaFX 控制器类问题 [已解决]
- python - 使用气流 restapi 触发 dag 不起作用,但单击 UI 可以
- loops - Spark 在每个循环的同一 Spark 会话中释放资源
- cmd - CMD - 枢轴/转置文件行[例如转换 1500 行 (x1 col) --> 500 行 (x3 col)]
- r - 无法从这些向量中制作数据框,然后在 R 中绘制条形图
- android - 我下载的颤振项目显示在 grdle 文件中找不到颤振 SDK
- python - 用另一个字典的值替换一个字典的键
- sql-server - 如何从 Azure Powershell Runbook 连接到本地 SQL Server?
- java - 在 Intellij 中,当我创建新包并右键单击 new -> java 类后不显示