Python循环绘制CITIfile导入数据图像如何设置自定义序列标题
Python绘图自定义序列标题修改方案
核心修改点
你有两种可选方案实现需求:
方案一(适配性更强,推荐)
你的代码中keyslist已经存储了每个数据集对应的S参数名(S11/S12/S21/S22),直接拼接后缀即可生成标题,无需手动维护列表:
将循环内的
plt.title(str(i))
替换为
plt.title(f"{keyslist[i]} Log Magnitude")
方案二(固定指定4个标题)
如果需要严格使用你指定的标题顺序,不受keyslist内容影响:
- 在绘图循环前新增自定义标题列表定义:
custom_titles = ["S11 Log Magnitude", "S12 Log Magnitude", "S21 Log Magnitude", "S22 Log Magnitude"]
- 将循环内的
plt.title(str(i))替换为
plt.title(custom_titles[i])
额外代码优化建议
你当前代码的坐标轴标签存在拼写错误和括号缺失问题,建议同步修改:
# 原错误写法 # plt.xlabel('Frequancy (Hz') # plt.ylabel('Log Magnitude (dB') # 修改后 plt.xlabel('Frequency (Hz)') plt.ylabel('Log Magnitude (dB)')
修改后完整绘图循环代码
x = np.linspace(8, 12, 201) # 选择方案二的话在此处添加custom_titles定义 for i in range(N): fig = plt.figure(i) print(i, ':', keyslist[i]) y = datalist[i] test = np.abs(y) f = sqrt(test) mag = 20*log10(f) plt.xlabel('Frequency (Hz)') plt.ylabel('Log Magnitude (dB)') plt.plot(x, mag) # 方案一标题写法 plt.title(f"{keyslist[i]} Log Magnitude") # 方案二标题写法请替换上一行为:plt.title(custom_titles[i]) # 若需要逐张显示图像可在此处添加plt.show()
内容的提问来源于stack exchange,提问作者Logan
相关产品推荐
相关产品推荐

