欢迎访问宙启技术站
智能推送

Matplotlib库函数:Python绘图库,用于绘制各种二维图表,如折线图、散点图、柱状图等

发布时间:2023-06-24 00:44:31

Matplotlib是Python中常用的绘图库之一,主要用于绘制各种二维图表,如折线图、散点图、柱状图等。Matplotlib具有良好的内部结构,易于使用Python程序进行绘图操作。Matplotlib库函数提供了如下模块:

1. pyplot模块

pyplot模块是Matplotlib库函数的主要模块,提供了绘制各种图表的简单接口。通过pyplot模块,可以快速创建一个图表,并设置其中的元素(如标题、轴标签、线条样式等)。

2. axes模块

axes模块是用于绘制坐标轴的模块,其提供了一些功能用于设定坐标轴的样式、范围、标签等。

3. figure模块

figure模块是用于绘制图形的模块,其提供了一些功能用于设定图形的样式、大小、分辨率等。

常用的 Matplotlib库函数:

1. plot函数

plot函数是Matplotlib库函数中最基本的绘图函数,主要用于绘制线条图。其函数原型为:

matplotlib.pyplot.plot(*args, scalex=True, scaley=True, data=None, **kwargs)

参数说明:

- *args:指定x轴和y轴的数据或序列,可以是单个y轴数据(此时x轴默认为0~n-1)或x轴和y轴数据的组合(此时两者须有相同长度)

- scalex:指定x轴是否自适应,默认为True

- scaley:指定y轴是否自适应,默认为True

- data:指定数据源,如果提供了x轴和y轴的数据序列,则无需此参数;否则,需要提供一个包含了x轴和y轴数据的DataFrame或numpy数组

- **kwargs:用于指定其他绘图参数,如线条样式、颜色、标记符号等。详细的参数说明可以查看Matplotlib官网。

示例:

import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [1, 4, 9, 16, 25]
plt.plot(x, y, color='green', linestyle='dashed', linewidth=2, marker='o')
plt.title('Line Chart')
plt.xlabel('x-axis')
plt.ylabel('y-axis')
plt.show()

运行结果:

![image1](https://s3.bmp.ovh/imgs/2022/02/9f9b606c4bc9358d.png)

2. scatter函数

scatter函数是用于绘制散点图的函数,其函数原型为:

matplotlib.pyplot.scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, edgecolors=None, **kwargs)

参数说明:

- x,y:指定散点的x轴和y轴数据序列

- s:指定散点的大小,默认为20

- c:指定散点的颜色序列,可以是单值(散点的所有颜色相同)或由每个散点颜色组成的序列

- marker:指定散点的形状,默认为‘o’

- **kwargs:用于指定其他绘图参数,如颜色映射、标记符号等。

示例:

import matplotlib.pyplot as plt
import numpy as np
#生成随机数据
x = np.random.rand(50)
y = np.random.rand(50)
colors = np.random.rand(50)
size = np.random.rand(50)*1000
plt.scatter(x, y, s=size, c=colors, alpha=0.5)
plt.title('Scatter Plot')
plt.xlabel('x-axis')
plt.ylabel('y-axis')
plt.show()

运行结果:

![image2](https://s3.bmp.ovh/imgs/2022/02/ca9ce285dfbbddc0.png)

3. bar函数

bar函数是用于绘制柱状图的函数,其函数原型为:

matplotlib.pyplot.bar(x, height, width=0.8, bottom=None, align='center', data=None, **kwargs)

参数说明:

- x:指定每个柱子的x轴坐标序列

- height:指定每个柱子的高度

- width:指定柱子的宽度,默认为0.8

- bottom:指定底部的位置,默认为None(柱子将起始于x轴)

- align:指定柱子的对齐方式,可以是‘center’(居中)、‘edge’(靠近左侧)、‘edge’(靠近右侧)

- **kwargs:用于指定其他绘图参数,如颜色映射、标记符号等。

示例:

import matplotlib.pyplot as plt

x = ['A', 'B', 'C', 'D', 'E']
y = [10, 5, 20, 15, 30]
plt.bar(x, y, color='red')
plt.title('Bar Chart')
plt.xlabel('x-axis')
plt.ylabel('y-axis')
plt.show()

运行结果:

![image3](https://s3.bmp.ovh/imgs/2022/02/5db5d2c8fbe52159.png)

4. pie函数

pie函数是用于绘制饼状图的函数,其函数原型为:

matplotlib.pyplot.pie(x, explode=None, labels=None, colors=None, autopct=None, pctdistance=0.6, shadow=False, labeldistance=1.1, startangle=None, radius=None, counterclock=True, wedgeprops=None, textprops=None, center=(0, 0), frame=False, rotatelabels=False, *, normalize=None, data=None)

参数说明:

- x:指定每个部分的数据序列

- explode:指定每个部分与中心的距离,默认为None(即所有部分均位于中心)

- labels:指定每个部分的标签,默认为None

- colors:指定每个部分的颜色序列,默认为None

- autopct:设定百分比显示格式,默认为无

- shadow:指定是否显示阴影,默认为False

- startangle:指定开始的角度,默认为0

- radius:指定饼状图的半径,默认为1

- **kwargs:用于指定其他绘图参数,如边框线宽度等。

示例:

import matplotlib.pyplot as plt

labels = 'A', 'B', 'C', 'D'
sizes = [15, 30, 45, 10]
explode = (0, 0.1, 0, 0)
colors = ['yellowgreen', 'gold', 'lightskyblue', 'lightcoral']
plt.pie(sizes, explode=explode, labels=labels, colors=colors, autopct='%1.1f%%', shadow=True, startangle=90)
plt.axis('equal')
plt.title('Pie Chart')
plt.show()

运行结果:

![image4](https://s3.bmp.ovh/imgs/2022/02/d5244cb5012f1c1f.png)

5. scatterplot函数

scatterplot函数是Seaborn库中的函数,用于绘制散点图。它利用Matplotlib库函数实现,但具有更好的美学效果和可用性。其函数原型为:

seaborn.scatterplot(x=None, y=None, hue=None, style=None, size=None, data=None, palette=None, legend='auto', hue_order=None, hue_norm=None, sizes=None, size_order=None, size_norm=None, markers=True, style_order=None, x_bins=None, y_bins=None, units=None, estimator=None, ci=95, n_boot=1000, alpha='auto', x_jitter=None, y_jitter=None, legend_out=True, **kwargs)

参数说明:

- x,y: 指定绘制散点图的x轴和y轴数据

- hue:用于分类数据的额外变量

- style:用于绘制散点的子集

- size:用于通过点的大小表示数值变量

- **kwargs:用