python的绘图工具matplotlib.pyplot

Posted 捷后愚生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python的绘图工具matplotlib.pyplot相关的知识,希望对你有一定的参考价值。

matplotlib.pyplot 是什么

matplotlib.pyplotmatplotlib 库的一个子模块,它提供了一种类似于 MATLAB 的绘图系统,可用于创建各种类型的图表和可视化图像。
使用 pyplot 可以方便地绘制二维图形,如折线图、散点图、直方图、条形图等等。您可以使用函数 plot()scatter()hist()bar() 等来创建不同类型的图形。
同时, pyplot 还可以设置图表的标题、坐标轴、标签、颜色、线型等等属性,使图表更加美观和易于理解。
除了基本的绘图功能外, pyplot 还可以处理图像、设置图表样式、自定义图表元素等等。它是 Python 中最流行和广泛使用的绘图库之一,适用于各种科学、工程和数据分析应用。
总之, matplotlib.pyplot 是一个非常强大和灵活的数据可视化工具,可以帮助您轻松创建各种类型的图表和图像,并提供了大量的自定义选项和功能。

matplotlib.pyplot 常用的方法

  1. plot() :绘制折线图、散点图等。可以设置数据、线条颜色、线型、标记、标签等参数。
  2. scatter() :绘制散点图。可以设置数据、颜色、尺寸、标签等参数。
  3. bar() :绘制条形图。可以设置数据、颜色、宽度、对齐方式、标签等参数。
  4. hist() :绘制直方图。可以设置数据、颜色、直方条数、标签等参数。
  5. pie() :绘制饼图。可以设置数据、颜色、比例、标签等参数。
  6. subplot() :将多个图形在同一画布中绘制。可以设置子图的行数、列数、位置等参数。
  7. title() :设置图形的标题。可以设置标题内容、字体、大小、颜色等参数。
  8. xlabel()ylabel() :设置 x 轴和 y 轴的标签。可以设置标签内容、字体、大小、颜色等参数。
  9. xlim()ylim() :设置 x 轴和 y 轴的范围。可以设置最小值、最大值等参数。
  10. legend() :设置图例。可以设置图例内容、位置、字体、大小、颜色等参数。
  11. grid() :添加网格线。可以设置线条颜色、线型、透明度等参数。
  12. savefig() :保存图形。可以设置文件名、文件格式、图像质量等参数。

hist()

matplotlib.pyplot.hist() 是一个用于绘制直方图的函数,其主要作用是将数据分成若干个直方块,统计每个区间内数据出现的频数或概率,并将其绘制成柱状图,以直观展示数据分布情况。

下面是 matplotlib.pyplot.hist() 函数的基本语法:
plt.hist(x, bins=None, range=None, density=False, cumulative=False, color=None)
其中,参数含义如下:

  • x :需要绘制直方图的数据。
  • bins :直方块的数量或分布规则,默认值为 10 。
  • range :数据的值域,即数据的取值范围,默认值为 (x.min(), x.max()) 。
  • density :是否将直方图转换为概率密度直方图,默认值为 False 。
  • cumulative :是否绘制累计分布直方图,默认值为 False 。
  • color :指定直方图颜色。

下面是一个简单的例子,用于展示 matplotlib.pyplot.hist() 函数的使用方法:

import matplotlib.pyplot as plt
import numpy as np
 # 生成一组随机数据
data = np.random.randn(10000)
 # 绘制直方图
plt.hist(data, bins=50, color=\'steelblue\', density=False)
 # 设置图形标题和坐标轴标签
plt.title(\'Histogram\')
plt.xlabel(\'Value\')
plt.ylabel(\'Frequency\')
 # 显示图形
plt.show()

上面的代码生成了一个包含 10000 个随机数的数据集,并利用 matplotlib.pyplot.hist() 函数绘制了其直方图。
其中, bins 参数设置了直方块的数量为 50 ,直方块的颜色为钢蓝色,同时设置了图形标题和坐标轴标签。
最后使用 plt.show() 函数显示图形。

注:这里用到的 numpy.random.randn() 函数用于生成指定数量的服从标准正态分布的随机数。

Python绘图工具turtle库的使用

#PythonDraw.py
import turtle   #引入了一个绘图库(海归库)
turtle.setup(650,350,200,200)       #设置一个窗体
turtle.penup()      #将画笔抬起
turtle.fd(-250)     #让海龟倒退行进250个像素点,由于海龟处于飞起状态画布不留效果
turtle.pendown()    #将画笔放下
turtle.pensize(25)      #设置画笔的宽度为25个像素
turtle.pencolor("purple")       #画笔颜色设为purple
turtle.seth(-40)        #将海龟方向改为绝对的-40度方向
for i in range(4):      #循环4次绘制蟒蛇半径为40个像素角度分别为80度和-80度
    turtle.circle(40,80)
    turtle.circle(-40,80)
turtle.circle(40,80/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40*2/3)
turtle.done()       #程序运行后不会自动退出需要手动关闭窗口,去掉这条语句程序运行结束会自动退出

 

一、turtle基本情况

  turtle(海归)库是turtle绘图体系的Python实现

  -turtle绘图体系:1969年诞生,主要用于程序设计入门

  -Python语言的标准库之一

    Python计算生态 = 标准库 + 第三方库

    标准库:随解释器直接安装到操作系统中的功能模块

    第三方库:需要经过安装才能使用的功能模块

  -入门级的图形绘制函数库

二、turtle绘图窗体布局

  turtle.setup(width,heigth,startx,starty)

    startx、starty不给值默认在正中心

  -setup()设置窗体大小及位置

  -4个参数中后两个可选

  -setup()不是必须的

三、turtle空间坐标体系

  1、绝对坐标

    海龟刚开始位于画布的正中间坐标为(0,0)

    技术图片

    turtle.goto(x,y)  #海龟从当前位置位移到(x,y)

  2、海龟坐标体系

    从海龟自身运动来讲它看到的是什么样的,对于海龟来讲它的当前行进方向无论是朝向哪个角度都叫前进方向,反方向是后退方向。

    turtle.fd(d)  #向海龟的正前方向运行

    turtle.bk(d)  #向海龟的反方向运行

      参数d为移动像素数

    turtle.circle(r,angle)  #以海龟当前位置左侧的某一个点为圆心进行曲线运行

四、turtle的角度坐标体系

  1、绝对角度

  turtle.seth(angle)

    -seth()改变海龟进行方向

    -seth()只改变方向但不行进不绘制任何信息

    -angle 为绝对度数

技术图片

  2、海龟角度

    turtle.left(angle)  #向左改变angle角度

    turtle.right(angle)  #向右改变angle角度

五、RGB色彩体系

  由三种颜色构成的万物色

  -RGB指红蓝绿三个通道的颜色组合

  -覆盖视力所能感知的颜色组合

  -RGB每色取值范围0-255或0-1小数

  常见RGB色彩

技术图片

技术图片

  1、默认采用小数值,可切换为整数值

    turtle.colormode(mode)

    -1.0:RGB小数值模式

    -255:RGB整数值模式

六、库引用

  扩充Python程序功能的方式

  1、-使用import保留字完成,采用<a>.<b>()编码风格

    import <库名>

    <库名>.<函数名>(<函数参数>)

   2、-使用from和import保留字共同完成

    from <库名>import<函数名>

    from <库名> import*   #使用这两种方式在调用函数时就不需要加库名了,直接用函数名加参数调用。

    <函数名>(<函数参数  >)

  使用第一种方法不会出现函数重名的问题,第二种方法可能会出现函数名与程序员自定义的函数重名的问题。

  3、-使用import和as保留字共同完成(这种方法代码量较少也防止了函数重名的情况)

    import<库名>as<库别名>

    <库别名>.<函数名>(<函数参数>)

    -给调用的外部库关联一个更短、更适合自己的名字对编写程序来讲会带来很多的便利。

七、turtle画笔控制函数

  画笔操作后一直有效,一般成对出现

  -turtle.penup()    别名  turtle.pu()  #抬起画笔,不在画布上形成图案

  -turtle.pendown()   别名  turtle.pd()  #放下画笔,在画布上形成图案

  -turtle.pensize(width)  别名  tutle.width(width)  #画笔宽度 

  -turtle.pencolor(color)   #画笔颜色  color为颜色字符串或r,g,b值

    -颜色字符串:  turtle.pencolor("purple")  #函数参数为字符串类型且为小写

    -RGB的小数值:  turtle.pencolor(0.63,0.13,0.94)

    -RGB的元组值: turtle.pencolor((0.63,0.16,0.94))

八、turtle运动控制函数

  控制海龟行进方向:走直线或者走曲线

  -turtle.forward(d)      别名   turtle.fd(d)

    向前行进,海龟走直线

  -d:行进距离,可以为负数

  -turtle.circle(r,extent=None)

    根据半径r绘制extend角度的弧形

  -r:半径,默认圆心在海龟左侧r距离的位置

  -extend:绘制角度,默认是360度整圆

九、turtle方向控制函数

  控制海龟面对方向:绝对角度和海龟角度  

  1、绝对角度

    -turtlr.sethending(angle)  别名  turtle.seth(angle)

      改变行进方向,海龟前进的角度

    -angle:将海龟当前方向改变为某一个绝对角度 

  2、海龟角度

    -turtle.left(angle)  #海龟向左转

    -turtle.right(angle)  #海龟向右转

    -angle:在海龟当前方向上向左或者向右旋转的角度

  注意:方向控制函数只改变海龟行进方向并不在画布上留下痕迹,如果需要海龟行动需要调用运动控制函数。

十、循环语句与range()函数

  循环语句指按一定次数循环执行的一组语句

  常用的方式

    for <变量> in range(<参数>)    #range的参数就是循环的次数

      <被循环执行的语句>

  -<变量>表示每次循环的计数,0到<次数>-1

    for i in range(5)

      print("Hello:",i)     #print输出语句加,可以输出空格

  ‘‘‘输出

    Hello: 0

    Hello: 1

    Hello: 2

    Hello: 3

    Hello: 4  ‘‘‘

  range( ) 函数

  产生循环计数序列的函数

  -range(N)

  产生0到N-1的整数序列,共N个

  -range (M,N)

  产生从M到N-1的整数序列,共N-M个

以上是关于python的绘图工具matplotlib.pyplot的主要内容,如果未能解决你的问题,请参考以下文章

python的绘图工具matplotlib.pyplot

python绘图工具turtle库的使用

Python-turtle库知识小结(python绘图工具)

python画图的问题~

Python绘图工具matplotlib的使用(图形并茂)

Python绘图与可视化