本文介绍: matplotlib一个用于绘制各种类型图表的Python绘图库,它以各种硬拷贝格式和跨平台交互式环境生成出版质量级别图形。它支持各种不同的图表类型,包括线图、散点图、条形图、饼图等。

目录

一、什么是matplotlib库

二、基本用法

1、绘制简单的线图

 plot()函数:

2、绘制散点图

scatter()函数:

3、绘制条形图 

bar()函数:

4、绘制饼图

pie()函数:

三、重要用法

1、设置样式

2、添加标签

3、设置坐标轴范围

4、绘制多个图表

5、绘制3D图表

四、注意点

五、在机器学习中的应用

样例:

1、绘制线条

2、绘制散点图

3、绘制直方图


一、什么是matplotlib

  matplotlib一个用于绘制各种类型图表的Python绘图库,它以各种硬拷贝格式和跨平台交互式环境生成出版质量级别图形。它支持各种不同的图表类型,包括线图、散点图、条形图、饼图等。

        Matplotlib模块中最常用的是pyplot模块,其中包含我们需要的诸多功能函数,因此在开始使用前,我们依旧约定,将matplotlib库的pyplot子库写法做如下简化:

import matplotlib.pyplot as plt

二、基本用法

1、绘制简单的线图

 plot()函数

        绘制曲线可用函数绘制过程需在画布上进行,如果没事先显式创造画布对象,则plot会在绘制前隐式地创建一个画布

        基本格式为:plt.plot(x, y, format_string, **kwargs)

其中:x、y为所对应轴的数据,是列表数组format_string控制曲线的格式字符串(可选);参数四则表示第二组或更多组(x, y, format_string)数据

import matplotlib.pyplot as plt

# 创建数据
x = [1, 2, 3, 4]
y = [1, 4, 9, 16]

# 绘制图表
plt.plot(x, y)

# 显示图表
plt.show()

输出结果

2、绘制散点图

scatter()函数

散点图的绘制工具基本格式为:plt.scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None,vmin=None, vmax=None, alpha=None, linewidths=None,verts=None, edgecolors=None, hold=None, data=None,**kwargs)

其中:

x,y:输入数据,形状为 shape(n,))的数组

c标记的颜色,可选,默认为’b‘即蓝色。

marker:标记样式默认为’o’。

alpha:透明度,实数,0~1。

linewidths:标记点的宽度

import matplotlib.pyplot as plt

# 创建数据
x = [1, 2, 3, 4]
y = [1, 4, 9, 16]

# 绘制图表
plt.scatter(x, y)

# 显示图表
plt.show()

输出结果

3、绘制条形图 

bar()函数

绘制条形图的工具基本格式为:bar(x,heightwidth=0.8,bottom=None,hold=None,data=None,**kwargs)

其中:

x:x轴刻度,为数值序列字符串序列

height:y轴,展示数据→柱形图高度

import matplotlib.pyplot as plt

# 创建数据
labels = ['A', 'B', 'C', 'D']
values = [1, 4, 9, 16]

# 绘制图表
plt.bar(labels, values)

# 显示图表
plt.show()

输出结果

4、绘制饼图

pie()函数:

饼图绘制工具基本格式为:plt.pie(values, labels=labels, colors=colors, explode=explode, autopct=autopctshadow=shadow)

其中:

values:表示饼图的数值可以一个序列或者列表
labels:表示饼图各部分的标签可以一个序列或者列表
colors:表示饼图各部分的颜色,可以一个序列或者列表
explode:表示饼图各部分与中心的距离可以一个序列或者列表
autopct:表示饼图各部分所占比例的显示方式
shadow:表示是否给饼图添加阴影

注意:values参数是必须要指定的,而其他参数都是可选的。同时,labels、colors、explode、autopct这些参数长度必须与values的长度相同。

import matplotlib.pyplot as plt

# 创建数据
labels = ['A', 'B', 'C', 'D']
values = [1, 4, 9, 16]

# 绘制图表
plt.pie(values, labels=labels)

# 显示图表
plt.show()

输出结果

三、重要用法

        除了基本用法matplotlib还有许多重要的用法,例如设置图表的样式添加标签设置坐标轴范围

1、设置样式

import matplotlib.pyplot as plt

# 创建数据
x = [1, 2, 3, 4]
y = [1, 4, 9, 16]

# 设置样式
plt.style.use('ggplot')

# 绘制图表
plt.plot(x, y)

# 显示图表
plt.show()

 效果如下:

2、添加标签

import matplotlib.pyplot as plt

# 创建数据
x = [1, 2, 3, 4]
y = [1, 4, 9, 16]

# 绘制图表
plt.plot(x, y)

# 添加标签
plt.title('Square Numbers')
plt.xlabel('Value')
plt.ylabel('Square of Value')

# 显示图表
plt.show()

效果如下:

 

3、设置坐标轴范围

import matplotlib.pyplot as plt

# 创建数据
x = [1, 2, 3, 4]
y = [1, 4, 9, 16]

# 绘制图表
plt.plot(x, y)

# 设置坐标轴范围
plt.xlim(0, 5)
plt.ylim(0, 20)

# 显示图表
plt.show()

 效果如下:

4、绘制多个图表

import matplotlib.pyplot as plt

# 创建数据
x = [1, 2, 3, 4]
y1 = [1, 4, 9, 16]
y2 = [1, 2, 3, 4]

# 绘制图表
plt.subplot(2, 1, 1)
plt.plot(x, y1)
plt.title('Subplots Example')
plt.ylabel('Square of Value')

plt.subplot(2, 1, 2)
plt.plot(x, y2)
plt.xlabel('Value')
plt.ylabel('Value')

# 显示图表
plt.show()

效果如下:

5、绘制3D图表

import matplotlib.pyplot as plt
from mpl_toolkits import mplot3d
import numpy as np

# 创建数据
fig = plt.figure()
ax = plt.axes(projection='3d')

z = np.linspace(0, 1, 100)
x = z * np.sin(25 * z)
y = z * np.cos(25 * z)

# 绘制图表
ax.plot3D(x, y, z, 'gray')
ax.set_title('3D Line Plot')

# 显示图表
plt.show()

效果如下:

四、注意点

使用matplotlib库时,有一些要注意的点:

五、在机器学习中的应用

matplotlib库在机器学习中的应用非常广泛,主要是用于数据可视化结果分析,常见的应用场景包括:

  1. 数据可视化:在机器学习中,我们通常需要对数据进行可视化以便更好理解数据、发现数据中的规律和趋势、选择合适的特征算法等。matplotlib库提供了丰富的绘图函数和工具可以绘制线条、散点图、直方图、箱线图、热力图等,方便用户行数探索分析

  2. 模型性能评估:在机器学习中,我们需要对模型性能进行评估,例如计算准确率、召回率、F1值等指标matplotlib库提供了绘制ROC曲线、学习曲线、验证曲线等函数,可以直观地展示模型性能,帮助用户进行结果分析和模型选择

  3. 结果可视化:在机器学习中,我们需要将模型训练结果进行可视化,例如绘制分类决策边界、预测结果等。matplotlib库提供了绘制等高线图、3D图、动态图等函数,可以展示模型的决策边界、分类效果等,方便用户进行结果可视化和模型调整。

总的来说,matplotlib库是机器学习中不可或缺的数据可视化工具,可以帮助用户更好理解数据和模型,进行结果分析和模型选择

样例

1、绘制线条

import matplotlib.pyplot as plt
import numpy as np

# 生成数据
x = np.linspace(0, 10, 100)
y = np.sin(x)

# 绘制线条
plt.plot(x, y)

# 设置标题和坐标轴标签
plt.title('Sin Function')
plt.xlabel('X')
plt.ylabel('Y')

# 显示图表
plt.show()

 效果如下:

2、绘制散点图

import matplotlib.pyplot as plt
import numpy as np

# 生成数据
x = np.random.rand(100)
y = np.random.rand(100)
colors = np.random.rand(100)

# 绘制散点图
plt.scatter(x, y, c=colors)

# 设置标题和坐标轴标签
plt.title('Random Data')
plt.xlabel('X')
plt.ylabel('Y')

# 显示图表
plt.show()

效果如下:

3、绘制直方图

import matplotlib.pyplot as plt
import numpy as np

# 生成数据
data = np.random.randn(1000)

# 绘制直方图
plt.hist(data, bins=30)

# 设置标题和坐标轴标签
plt.title('Histogram')
plt.xlabel('Value')
plt.ylabel('Frequency')

# 显示图表
plt.show()

效果如下:

 

原文地址:https://blog.csdn.net/yewanyuan/article/details/129472940

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_11357.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注