Jupyter Notebook中matplotlib绘图不显示标题与坐标轴标签
问题产生原因
核心是API用法错误:matplotlib.pyplot中的xlabel、ylabel、title都是需要传入参数调用的函数,不是支持直接赋值的属性。
你代码里写的plt.xlabel = "some random ages"这类写法,本质是给pyplot模块新增了三个同名字符串变量,直接覆盖了原本用来设置标签、标题的函数,根本没有触发图表元素的渲染逻辑,标签和标题自然不会显示。
之前提到的「同单元格运行代码」「将plt.show()放在末尾」的方案,仅能解决代码执行顺序错乱导致的图表元素不显示问题,和你这次的API调用错误场景完全不匹配,所以无效。
修复方法
- 先重启Jupyter Notebook的内核:你之前的赋值操作已经把
plt下的三个原生函数覆盖成了字符串,不重启的话后续调用这三个方法会报「字符串对象不可调用」的错误。 - 把赋值写法改成标准的函数传参调用,修正后的可运行代码如下:
import numpy as np import matplotlib.pyplot as plt x = list(np.linspace(25,55,6)) y = np.random.randint(10000,50000,6) plt.xlabel("some random ages") plt.ylabel("some random salaries") plt.title("whatever") plt.plot(x,y) plt.show()
运行后即可正常显示坐标轴标签和标题。
内容的提问来源于stack exchange,提问作者Aniruddh
相关产品推荐
相关产品推荐

