You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

添加第二个plt.plot时出现无效语法错误,请求排查解决

排查Python matplotlib代码的语法错误

我来帮你梳理下代码里的几个关键语法问题,这些就是触发无效语法错误的根源:

1. 多行变量定义的语法问题

你第一行把多个变量定义写在同一行却没加分号,Python里同一行多个语句必须用;分隔,或者直接分成多行写(更推荐后者,可读性更好)。

错误写法:

x = [] y = [] x2 = [] y2 = []

正确写法(二选一):

# 方式1:分行写(推荐)
x = []
y = []
x2 = []
y2 = []

# 方式2:用分号分隔同一行
x = []; y = []; x2 = []; y2 = []

2. plt.plot语句的括号未闭合

你的两个plt.plot调用最后都少了一个右括号,导致语法不完整;另外label=(+str(...))里的+是多余的,直接拼接字符串即可,用f-string会更简洁。

错误写法:

plt.plot(x,y,label=(+str(incur1)+ '/' +str(incur2))
plt.plot(x2,y2,label=(+str(incur2)+ '/' +str(incur1))

修正后:

plt.plot(x, y, label=f"{incur1}/{incur2}")
plt.plot(x2, y2, label=f"{incur2}/{incur1}")

3. plt.title的语法错误

这里有两个明显问题:

  • 开头多了个多余的+号
  • 换行符写错了,是\n不是/n
  • 同样推荐用f-string简化字符串拼接

错误写法:

plt.title (+incur1+ '/' +incur2+ '/nEx Rate Data')

修正后:

plt.title(f"{incur1}/{incur2}\nEx Rate Data")

4. 关于你尝试的label变量优化

你定义label1 = (incur1+ '/' +incur2)是没问题的,但调用时写成label=(+str(label1)...多了多余的+和括号,直接用label=label1就行(因为label1已经是字符串了,不需要再转str):

label1 = f"{incur1}/{incur2}"
label2 = f"{incur2}/{incur1}"
plt.plot(x, y, label=label1)
plt.plot(x2, y2, label=label2)

完整修正后的代码示例

import matplotlib.pyplot as plt
import datetime  # 后续datetime逻辑需要导入

# 假设你已经给incur1、incur2赋值,这里用示例值
incur1 = "USD"
incur2 = "EUR"

# 变量定义修正
x = []
y = []
x2 = []
y2 = []

# 绘图语句修正
plt.plot(x, y, label=f"{incur1}/{incur2}")
plt.plot(x2, y2, label=f"{incur2}/{incur1}")

plt.xlabel('Time')
plt.ylabel('Ex Rate')
plt.title(f"{incur1}/{incur2}\nEx Rate Data")
plt.legend()

# 后续添加datetime数据的示例
current_time = datetime.datetime.now()
first_exRtRate1 = 1.08  # 示例汇率值
x.append(current_time)
y.append(first_exRtRate1)

# 最后别忘了显示图表
plt.show()

额外提示

  • 字符串拼接优先用f-string(Python3.6+支持),比+拼接更简洁易读,也不容易出错
  • 写完代码后可以先检查括号是否配对,很多语法错误都是括号不闭合导致的
  • 添加datetime数据时,如果后续遇到x轴时间标签重叠的问题,可以用plt.xticks(rotation=45)来旋转标签优化显示

内容的提问来源于stack exchange,提问作者Goulouh Anwar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 12:14:24