在Python中,使用Matplotlib库进行绘图时,如果在循环中绘制多条曲线,但最终只显示最后一条曲线,通常是因为每次循环都在同一个图形对象上绘制,而没有保存或分隔每条曲线。
如果在循环中绘制多条曲线,但最终只显示最后一条曲线,通常是因为每次循环都在同一个图形对象上绘制,而没有保存或分隔每条曲线。
plt.figure()
创建新的图形对象import matplotlib.pyplot as plt
# 示例数据
x = list(range(10))
y_values = [list(range(i, i+10)) for i in range(5)]
for i, y in enumerate(y_values):
plt.figure() # 创建新的图形对象
plt.plot(x, y, label=f'Curve {i}')
plt.legend()
plt.title(f'Curve {i}')
plt.show()
plt.subplot()
创建子图import matplotlib.pyplot as plt
# 示例数据
x = list(range(10))
y_values = [list(range(i, i+10)) for i in range(5)]
fig, axs = plt.subplots(len(y_values), 1, figsize=(8, 6))
for i, ax in enumerate(axs):
ax.plot(x, y_values[i], label=f'Curve {i}')
ax.legend()
ax.set_title(f'Curve {i}')
plt.tight_layout()
plt.show()
通过上述方法,可以在循环中绘制多条曲线,并确保每条曲线都能正确显示。
领取专属 10元无门槛券
手把手带您无忧上云