前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数据可视化初探:Matplotlib框架的使用

数据可视化初探:Matplotlib框架的使用

原创
作者头像
花花Binki
发布2023-11-28 23:59:49
2131
发布2023-11-28 23:59:49
举报
文章被收录于专栏:岚的工作随笔岚的工作随笔
封面
封面

前言

软件行业成立之初,是由业务驱动数据。人们尝试各种手段从无纸化过度到信息化、数字化。渐渐的,产生的数据量越来越多,人们再次利用这些数据,在观察数据的形态结构中,发现了新的业务。

而其两者之间,重要的一环就是,数据可视化!

入门

本次选择使用Python及其绘图库matplotlib,用到的编辑器依旧是VsCode

其一:概念

在可视化之前,我们需要一片空间。在这里叫做Figure实例,也就是画布。在画布上面,就是我们想要呈现的诸多元素,就是Axes实例。有了画布和图形,接下来就需要我们来使用一些API来组合控制。

关系图谱
关系图谱

其二:简单绘制

了解了一些概念后,现在让我们开始编写一些简单的代码

matplotlib 需要 使用pip安装后使用

代码语言:python
复制
import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0,10,1000) # 生成由0到10均匀的1000个点
y = np.cos(x) # 生成1000个点的cos函数
plt.plot(x,y,ls="-",lw=2,label="Figure 1") # 画图
plt.legend() # 显示图例
plt.show()  # 显示图形
运行效果图
运行效果图

xy是我们准备的数据,也就是最后要展示的数据。是元素之一。

plt就是画布,通过使用ls:线条风格,lw:线条宽度,label:图例描述。

其三:其他常用图形

①柱状图

代码语言:python
复制
import matplotlib as mpl
import matplotlib.pyplot as plt

# 设置字体
mpl.rcParams["font.sans-serif"]=["SimHei"]
# 解决保存图像是负号'-'显示为方块的问题
mpl.rcParams["axes.unicode_minus"]=False
# 创建数据
x = [1,2,3,4,5,6,7,8]
y = [3,1,4,5,8,9,7,2]
# 画图
plt.bar(x,y,align="center",color="c",tick_label=["q","a","c","e","r","j","b","p"],hatch="/")
# 设置坐标轴标签
plt.xlabel("箱子编号")
plt.ylabel("箱子重量(kg)")
plt.show()
柱状图
柱状图

②饼图

pie()

③极线图

polar()

④气泡图

scatter()

实战:收支图

需求分析

在快节奏的生活中,非常容易陷入消费陷阱。我们做好预防的一个重要手段就是记账,然后每天进行收支分析,形成收支图

技术选型

收支中,最重要的就是比例。所以条状图是符合要求的。

代码实现

代码语言:python
复制
import matplotlib as mpl
import matplotlib.pyplot as plt
# 设置字体
mpl.rcParams["font.sans-serif"]=["SimHei"]
# 解决保存图像是负号'-'显示为方块的问题
mpl.rcParams["axes.unicode_minus"]=False
# 收入数据
income = [1000, 1200, 1500, 1800, 2000]
# 支出数据A
expense = [500, 600, 700, 800, 900]
# 支出数据B
expense2 = [100, 200, 300, 400, 500]
# 支出数据C
expense3 = [200, 300, 400, 500, 600]
# 创建一个绘图对象
plt.figure()
# 绘制收入柱状图y
plt.bar(range(len(income)), income, color='g', label='收入')
# 绘制支出柱状图
plt.bar(range(len(expense)), expense, bottom=income, color='r', label='支出A')
plt.bar(range(len(expense2)), expense2, bottom=income, color='b', label='支出B')
plt.bar(range(len(expense3)), expense3, bottom=income, color='y', label='支出C')
# 添加标题和轴标签
plt.title('月收入支出')
plt.xlabel('月份')
plt.ylabel('消费')
# 添加图例
plt.legend()
# 显示图形
plt.show()
效果图
效果图

总结

本文是matplotlib Api的简单使用,如果想要实现更复杂的效果,一是需要出色的设计,二是需要更进阶的Api用法。

彩蛋,让混元助手用matplotlib画一个企鹅

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 入门
    • 其一:概念
      • 其二:简单绘制
        • 其三:其他常用图形
        • 实战:收支图
          • 需求分析
            • 技术选型
              • 代码实现
              • 总结
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档