Jackthelad Chow
2021-05-09 11:07
采纳率: 100%
浏览 182

为什么plt.style.use('seaborn')无法显示中文???

请教各位大神:
使用matplotlib来绘图的时候,把

plt.style.use('seaborn')

放在

matplotlib.rcParams['font.sans-serif'] = ['SimHei']

matplotlib.rcParams['axes.unicode_minus'] = False

前面时可以正常显示中文,但放在这两代码后面则无法显示中文。而把plt.style.use('seaborn')换成plt.style.use('bmh'),则无论放在什么位置都能正常显示中文。而同样还有其他类似情况,比如:plt.style.use('classic')与plt.style.use('seaborn')结果一致,而plt.style.use('seaborn-talk')则与plt.style.use('bmh')结果一致。

能正常显示中文的代码如下:


import matplotlib
import matplotlib.pyplot as plt


#设置字体
plt.style.use('seaborn')
matplotlib.rcParams['font.sans-serif'] = ['SimHei']
matplotlib.rcParams['axes.unicode_minus'] = False


fig, ax = plt.subplots()
ax.scatter(2, 4, s=200)

# 设置图表标题并给坐标轴加上标签。
ax.set_title("平方数", fontsize=24)
ax.set_xlabel("值", fontsize=14)
ax.set_ylabel("值的平方", fontsize=14)

# 设置刻度标记的大小。
ax.tick_params(axis='both', which='major', labelsize=14)
plt.show()

# 结果显示图片如下:

seaborn_correct seaborn_correct

 

seaborn_error seaborn_error

 

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

5条回答 默认 最新

  • 冷寒越 2021-05-09 12:59
    已采纳

    您先再测试下  看是不是这个原因  谢谢

    已采纳该答案
    1 打赏 评论
  • Jackthelad Chow 2021-05-09 11:11
    # 补充不能正常显示中文的代码如下:
    
    import matplotlib
    import matplotlib.pyplot as plt
    
    
    # 设置字体
    matplotlib.rcParams['font.sans-serif'] = ['SimHei']
    matplotlib.rcParams['axes.unicode_minus'] = False
    
    plt.style.use('seaborn')
    fig, ax = plt.subplots()
    ax.scatter(2, 4, s=200)
    
    # 设置图表标题并给坐标轴加上标签。
    ax.set_title("平方数", fontsize=24)
    ax.set_xlabel("值", fontsize=14)
    ax.set_ylabel("值的平方", fontsize=14)
    
    # 设置刻度标记的大小。
    ax.tick_params(axis='both', which='major', labelsize=14)
    plt.show()
    打赏 评论
  • 冷寒越 2021-05-09 11:18

    plt.style.use('xxxxx')是定制画布风格的,必须放在前面,放后面会覆盖设置的字体,显示乱码

    打赏 评论
  • 有问必答小助手 2021-05-10 11:09

    您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

    如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

    ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

    打赏 评论
  • 有问必答小助手 2021-05-11 15:53

    非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!

    速戳参与调研>>>https://t.csdnimg.cn/Kf0y

    打赏 评论

相关推荐 更多相似问题