人工智能(三)matplotlib
【摘要】 matplotlib快速入门
三、matplotlib快速入门
matplotlib是一个将数据可视化的模块。
什么你连什么是数据可视化都不知道是什么?
高中学的函数(可别跟Python中的函数搞混了)知道吧,把函数的图像画出来,就是数据可视化了
matplotlib是一个数据可视化的标准库,与numpy模块,pandas模块都很适用。
它能够绘制多种形式的图像,包括:
❝❞
折线图 —— plot () 散点图 —— scatter () 饼状图 —— pie () 柱状图 —— bar () 雷达图 —— polar () 三维图 —— mplot3d
3.1 基础理论
作图,我们需要有数据,坐标轴标签,标题,坐标轴刻度等属性。
-
数据可以使用numpy生成一维列表,在数学中也叫向量。
-
坐标轴标签由xlabel(),ylabel()方法(函数)设置
-
标题由title()方法(函数)设置
-
坐标轴刻度可以使用xticks (),yticks ()方法(函数)设置
3.2 绘制折线图
导入模块:
import numpy as np
# numpy用于生成数据
import matplotlib.pyplot as plt
# 使用matplotlib中的pyplot模块进行绘图
生成x轴,y轴数据:
x = np.arange(0,6,0.1) # x轴数据
y = np.sin(x) # y轴数据
绘制图案:
plt.plot(x,y,label="sin")
# 以x为x轴数据,y为y轴数据,绘制折线图,并设置线上的标签为sin
设置标题等属性:
plt.xlabel("number") # x轴标签
plt.ylabel("sin") # y轴标签
plt.title("sin fun") # 图像标题
使图像显示出来:
plt.show() # 显示图像
图像显示效果:
在这里插入图片描述3.3 绘制散点图
将代码绘制图像的plt.plot()
修改成plt.scatter()
全部代码:
import numpy as np
# numpy用于生成数据
import matplotlib.pyplot as plt
# 使用matplotlib中的pyplot模块进行绘图
x = np.arange(0, 6, 0.1) # x轴数据
y = np.sin(x) # y轴数据
plt.scatter(x, y, label="sin")
# 以x为x轴数据,y为y轴数据,绘制折线图,并设置线上的标签为sin
plt.xlabel("number") # x轴标签
plt.ylabel("sin") # y轴标签
plt.title("sin fun") # 图像标题
plt.show() # 显示图像
在这里插入图片描述
3.4 绘制饼状图
绘制一个编程语言的饼状图,数据随便写的,不要当真,还有一点,默认不支持中文
先导入模块
import numpy as np
# numpy用于生成数据
import matplotlib.pyplot as plt
# 使用matplotlib中的pyplot模块进行绘图
创建数据:
student_souce = np.array([25, 35, 45, 60])
绘制图案:
plt.pie(student_souce, labels=["C", "Python", "Java", "C+++"], autopct='%.2f%%')
# 设置student_souce为数据,每个数据的名字为labels的参数,并格式化输出各个所占百分比
设置标题与显示图像:
plt.title("Test") # 图像标题
plt.show() # 显示图像
完整代码:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author: Smly
# @datetime: 2021/9/28 12:56
# @Version: 1.0
import numpy as np
# numpy用于生成数据
import matplotlib.pyplot as plt
# 使用matplotlib中的pyplot模块进行绘图
student_souce = np.array([25, 35, 45, 60])
plt.pie(student_souce, labels=["C", "Python", "Java", "C+++"], autopct='%.2f%%')
# 设置student_souce为数据,每个数据的名字为labels的参数,并格式化输出各个所占百分比
plt.title("Test") # 图像标题
plt.show() # 显示图像
运行结果:
在这里插入图片描述3.5 绘制柱状图
先生成数据,然后再绘制图像
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author: Smly
# @datetime: 2021/9/28 13:02
# @Version: 1.0
import numpy as np
# numpy用于生成数据
import matplotlib.pyplot as plt
# 使用matplotlib中的pyplot模块进行绘图
x = np.arange(0, 6) # x轴数据
plt.bar(x, x)
# 以x为x轴数据,x为柱体高度,绘制柱状图
plt.xlabel("number") # x轴标签
plt.ylabel("sin") # y轴标签
plt.title("sin fun") # 图像标题
plt.show() # 显示图像
运行结果:
在这里插入图片描述3.6 图添加网格线
使用gird()
方法(函数)来设置网格线
函数参数:
❝❞
「b」:可选,默认为 None,可以设置布尔值,true 为显示网格线,false 为不显示,如果设置 **kwargs 参数,则值为 true。 「which」:可选,可选值有 'major'、'minor' 和 'both',默认为 'major',表示应用更改的网格线。 「axis」:可选,设置显示哪个方向的网格线,可以是取 'both'(默认),'x' 或 'y',分别表示两个方向,x 轴方向或 y 轴方向。 *「*kwargs」:可选,设置网格样式,可以是 color='r', linestyle='-' 和 linewidth=2,分别表示网格线的颜色,样式和宽度。
具体效果就自己往上面的代码里面的plt.show()
上面添加一个plt.gird()
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)