修改折线图坐标 | Python 数据可视化库 Matplotlib 快速入门之八-阿里云开发者社区

开发者社区> Python学习站> 正文

修改折线图坐标 | Python 数据可视化库 Matplotlib 快速入门之八

简介: 本节通过一个案例来介绍折线图横、纵坐标的修改以及均匀间隔显示的问题。

完善折线图(画布层) | Python 数据可视化库 Matplotlib 快速入门之七

完善原始折线图(辅助显示层)

之前介绍了在画布层的完善折线图,现在来介绍辅助显示层的完善。

准备数据并画出初始折线图

案例:显示温度变化状况
需求:画出某城市11点到12点1小时内每分钟的温度变化折线图,温度范围在15度~18度。
步骤:

  1. 准备数据x、y
  2. 创建画布
  3. 绘制图像
  4. 显示图像
import random

x = range(60)
y_shanghai  = [random.uniform(15, 18) for i in x]

plt.figure(figsize=(20, 8), dpi=80)
plt.plot(x, y_shanghai)
plt.show()

执行结果:

image.png

此时可以发现,因为坐标的原因,将温度变化差值显示的非常大,我们需要改变坐标去调整一下。

添加自定义x,y刻度

  • plt.xticks(x, **kwargs)
    x:要显示的刻度值
  • plt.yticks(y, **kwargs)

    y:要显示的刻度值
    

增加以下代码:

plt.xticks(x[::5])
#plt.yticks(range(40), [::5])
plt.yticks(range(0, 40, 5))

执行结果:

image.png

但是我们想要显示的结果是x时x分,再次修改代码:
我们需要x刻度是每五分钟显示一次:
准备x的刻度说明:

x_lable = ["11点{}分".format(i) for i in x] 
plt.xticks(x[::5], x_lable[::5])

执行结果:

image.png

必须是一一对应的关系,否则横坐标会按照顺序来,与预期结果不一致。

image.png

此时可以发现,如果没有解决过中文问题的话,会发现所有的中文都不显示,我们下一节来解决。

配套视频课程,点击这里查看

获取更多资源请订阅Python学习站

版权声明:本文中所有内容均属于阿里云开发者社区所有,任何媒体、网站或个人未经阿里云开发者社区协议授权不得转载、链接、转贴或以其他方式复制发布/发表。申请授权请邮件developerteam@list.alibaba-inc.com,已获得阿里云开发者社区协议授权的媒体、网站,在转载使用时必须注明"稿件来源:阿里云开发者社区,原文作者姓名",违者本社区将依法追究责任。 如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:developer2020@service.aliyun.com 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
Python学习站
使用钉钉扫一扫加入圈子
+ 订阅

Python学习资料大全,包含Python编程学习、实战案例分享、开发者必知词条等内容。

官方博客
官网链接