Matplotlib绘制张量数据:蓝色曲线显示为散点的问题排查
问题分析与解决
问题原因
你代码里调用ax.plot()时,给测试数据指定的格式字符串是'b.'——其中b代表蓝色,.代表散点标记样式。matplotlib的plot函数会严格按照这个格式字符串渲染,所以只会显示蓝色散点,不会连成曲线。
解决方案
要绘制蓝色曲线,只需修改格式字符串:
- 若只需要实线曲线,把
'b.'改成'b-'(-是默认的实线样式),或者直接写'b'(matplotlib默认用实线连接数据点)。 - 若想要曲线+散点的组合效果,可以用
'b.-',这样既有连线又保留点标记。
修改后的代码示例:
#plot import numpy as np import matplotlib.pyplot as plt n = 100 # 请确保n已提前定义 a=np.linspace(0,1,n) fig, ax=plt.subplots() ax.plot(a,(U_pred).clone().detach()[0],'g.',label='prediction') ax.plot(a,U_test,'b-',label = "test") # 替换格式字符串为'b-' ax.legend() #ax.set_ylim([-1,1])
内容的提问来源于stack exchange,提问作者James
相关产品推荐
相关产品推荐

