【机器学习基础 2】matplotlib库

这篇具有很好参考价值的文章主要介绍了【机器学习基础 2】matplotlib库。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、什么是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()

输出结果:

matplotlib库,机器学习,matplotlib,机器学习,python

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()

输出结果:

matplotlib库,机器学习,matplotlib,机器学习,python

3、绘制条形图 

bar()函数:

绘制条形图的工具,基本格式为:bar(x,height, width=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()

输出结果:

matplotlib库,机器学习,matplotlib,机器学习,python

4、绘制饼图

pie()函数:

饼图绘制工具,基本格式为:plt.pie(values, labels=labels, colors=colors, explode=explode, autopct=autopct, shadow=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库,机器学习,matplotlib,机器学习,python

三、重要用法

        除了基本用法,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()

 效果如下:

matplotlib库,机器学习,matplotlib,机器学习,python

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()

效果如下:

 matplotlib库,机器学习,matplotlib,机器学习,python

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()

 效果如下:

matplotlib库,机器学习,matplotlib,机器学习,python

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()

效果如下:matplotlib库,机器学习,matplotlib,机器学习,python

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,机器学习,python

四、注意点

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

  • 使用plt.show()命令显示图表。在交互模式下,图表会自动显示,但在脚本模式下,需要使用plt.show()命令显示图表。如果没有显示图表,可以尝试添加plt.show()命令。
  • 使用plt.plot()绘制线条时,可以设置颜色、线型、标记等属性。例如,plt.plot(x, y, 'ro-')表示绘制红色圆圈标记的线条。
  • 使用plt.xlabel()plt.ylabel()设置坐标轴标签,使用plt.title()设置图表标题。
  • 使用plt.xlim()plt.ylim()设置坐标轴范围,使用plt.xticks()plt.yticks()设置坐标轴刻度。
  • 使用plt.legend()添加图例,可以在图表中显示每个线条的标签。

五、在机器学习中的应用

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()

 效果如下:

matplotlib库,机器学习,matplotlib,机器学习,python

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()

效果如下:

matplotlib库,机器学习,matplotlib,机器学习,python

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()

效果如下:

matplotlib库,机器学习,matplotlib,机器学习,python

 文章来源地址https://www.toymoban.com/news/detail-694971.html

到了这里,关于【机器学习基础 2】matplotlib库的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 机器学习 | 掌握Matplotlib的可视化图表操作

            Matplotlib是python的一个数据可视化库,用于创建静态、动态和交互式图表。它可以制作多种类型的图表,如折线图、散点图、柱状图、饼图、直方图、3D 图形等。以渐进、交互式方式实现数据可视化。当然博主也不能面面俱到的讲解到所有内容,详情请参考:官网

    2024年01月24日
    浏览(38)
  • 机器学习Python7天入门计划--第一天-机器学习基础-讲人话

    机器学习Python7天入门计划 - 第一天: 机器学习基础 学习目标: 理解机器学习的基本概念和过程。 掌握基本的数据预处理技巧。 理解线性回归的原理和应用。 学习内容: 机器学习基础 什么是机器学习:机器学习是一种使计算机能够从数据中学习规律和模式的技术。 为什么

    2024年01月20日
    浏览(50)
  • 【Python机器学习】零基础掌握StackingRegressor集成学习

    如何更准确地预测糖尿病患者的血糖水平? 糖尿病是一种影响全球数百万人的慢性疾病。有效地管理和预测血糖水平是糖尿病患者日常生活的重要一环。单一的预测模型(比如线性回归、支持向量机等)虽然有一定的效果,但在处理复杂的医疗数据时,其准确性可能会受到限

    2024年02月08日
    浏览(41)
  • 【Python机器学习】零基础掌握AdaBoostRegressor集成学习

    有没有经历过这样的状况:需要预测未来房价走势,但传统的预测方法并不总是准确? 房价预测一直是人们关注的热点话题,无论是房产商、购房者,还是政府,都需要准确地知道未来房价的走势。那么,有没有一种更加精准、稳定的预测方法呢?答案是有的——AdaBoost Re

    2024年02月06日
    浏览(33)
  • 【Python机器学习】零基础掌握BaggingRegressor集成学习

    如何提升回归模型的稳定性和准确性? 在实际生活中,比如房价预测,经常会遇到一种情况:有大量的特征和样本数据,但模型的预测准确度仍然不尽人意。这时候,单一的模型(如支持向量机回归)可能表现得并不够好。 考虑到这个问题,解决方案可能是使用集成方法,

    2024年02月05日
    浏览(32)
  • 【Python机器学习】零基础掌握GradientBoostingClassifier集成学习

    什么能有效地解决分类问题,特别是在数据复杂、特征多样的情况下? 面对这个问题,许多人可能会想到复杂的神经网络或深度学习方法。然而,有一种称为“梯度提升分类器”(Gradient Boosting Classifier)的算法,以其高准确度、灵活性和易用性赢得了大量用户的青睐。 假设

    2024年02月05日
    浏览(44)
  • 【零基础学机器学习 2】 机器学习的实操步骤-以及在Python中实现机器学习模型

    👨‍💻 作者简介:程序员半夏 , 一名全栈程序员,擅长使用各种编程语言和框架,如JavaScript、React、Node.js、Java、Python、Django、MySQL等.专注于大前端与后端的硬核干货分享,同时是一个随缘更新的UP主. 你可以在各个平台找到我! 🏆 本文收录于专栏: 零基础学机器学习 🔥 专栏

    2024年02月05日
    浏览(43)
  • 【Python机器学习】零基础掌握IsotonicRegression等渗回归

    想要预测一个事件的结果,但因素多且复杂,难以得出精确的预测?在金融、医疗、教育等多个领域,这样的问题是非常普遍的。 假设在医疗领域,医生需要根据多项指标(如年龄、血压、胆固醇水平等)来预测患者是否有心脏病的风险。因为每个指标对结果的影响都可能不

    2024年02月07日
    浏览(35)
  • 【Python机器学习】零基础掌握SimpleImputer缺失值填充

    如何处理数据集中的缺失值,以便更准确地进行数据分析或模型训练? 在数据分析和机器学习中,数据的完整性和准确性至关重要。但现实情况是,收集到的数据往往存在缺失值。例如,医疗研究中可能缺少某些患者的体重、年龄或血压等信息。这样的缺失值会对数据分析或

    2024年02月08日
    浏览(31)
  • 【Python机器学习】零基础掌握BayesianRidge贝叶斯回归

    如何准确预测房价? 在现实生活中,购买房产可能是最大的一笔投资。因此,准确预测房价变得尤为重要。通常,房价受到多个因素的影响,包括地段、房龄、房屋面积等。但如何综合这些因素来做出准确预测呢? 这里介绍一种机器学习算法:贝叶斯岭回归(Bayesian Ridge R

    2024年02月08日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包