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

如何消除Matplotlib绘制股票曲线时代码运行产生的多余文本输出

问题原因

你看到的多余文本是plt.xticks()方法的返回值,该方法会返回包含刻度位置、刻度标签对象的元组,在Jupyter Notebook、IPython这类交互式运行环境中,会默认打印单元格最后一行代码的返回结果,因此出现了这些不需要的内容。

解决方法

有两种常用的方案可以避免输出:

  • 方案1:在最后一行plt.xticks()代码末尾添加英文分号;,即可直接抑制返回值输出,修改后完整代码如下:
study_symbol='TQQQ'
fig, ax1 = plt.subplots(figsize=(10, 6))
color = '#0072B2'
ax1.set_xlabel('Days')
ax1.set_ylabel('SPY', color=color)
ax1.plot(df2['Days'], df2['SPY'], color=color, ls='-', label='SPY')
ax1.scatter(df['Days'], df['SPY'], color=color, marker='o')
ax1.tick_params(axis='y', labelcolor=color)
ax1.legend(loc=(0.01, .94), frameon=False)
ax2 = ax1.twinx()  # 实例化共享x轴的第二个坐标轴

color = 'r'
ax2.set_ylabel(study_symbol, color=color)  # x轴标签已经由ax1设置
ax2.plot(df2['Days'], df2[study_symbol], color=color, ls='--', label=study_symbol)
ax2.scatter(df['Days'], df[study_symbol], color=color, marker='x')
ax2.tick_params(axis='y', labelcolor=color)
ax2.legend(loc=(0.01, .89), frameon=False)

fig.tight_layout()  # 防止右侧y轴标签被截断
plt.title(r'$\bfStock\ of\ SPY$' +
          '\ncorrelates with\n' +
          r'$\bfStock\ of $'+r'$\bf\ '+study_symbol+'$')
plt.xticks(ticks=df['Days'].tolist(), labels=df['Days'].tolist());
  • 方案2:将plt.xticks()的返回值赋值给无用变量(通常用_作为临时占位变量),仅需修改最后一行代码即可:
_ = plt.xticks(ticks=df['Days'].tolist(), labels=df['Days'].tolist())

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 06:36:03