Python中Matplotlib库的使用(三)—— Matplotlib绘制图的常用类型

本文深入探讨了Python中Matplotlib库的常用图表类型,包括折线图、散点图、条形图、茎叶图、阶梯图、填充图、堆叠区域图、图像显示、直方图和饼图,以及等高线图。通过实例讲解了如何使用这些图表展示数据的分布、变化趋势和关系,是Python数据可视化的实用教程。
摘要由CSDN通过智能技术生成

Matplotlib绘制图的常用类型

plot(x,y)

plot(x, y)函数用于绘制折线图。折线图是一种用来展示连续数据之间关系的图表类型,适用于表示数据随着一个或多个变量的变化而变化的情况。

具体来说,plot(x, y)函数接受两个参数:

  • x:表示X轴上的数据点的值,通常是一个数组或列表,表示自变量的取值。
  • y:表示Y轴上的数据点的值,也是一个数组或列表,表示因变量随自变量变化的取值。

折线图会将这些数据点连接起来,形成一条或多条线,以展示数据的趋势或变化情况。以下是一些常见的折线图样式及其特点:

  1. 单条折线图:用于表示单一变量的变化趋势。可以通过添加数据标记点来强调关键数据点。
  2. 多条折线图:可以在同一张图上绘制多条折线,用于比较多个变量之间的趋势。每条折线可以使用不同的颜色或线型进行区分。
  3. 带标记点的折线图:通过在折线上添加标记点,可以更清晰地表示数据的取值,尤其在数据变化明显的位置。
  4. 平滑曲线折线图:使用平滑曲线(如样条曲线或平滑的多项式拟合曲线)来连接数据点,以平滑显示数据的变化趋势,避免过多的波动。
  5. 面积图折线图:可以通过在折线下方填充颜色,展示数据随时间的累积变化。常用于表示累积数据,如总收入或总销量。
  6. 双坐标轴折线图:在同一张图上绘制两条折线,分别使用左右两个不同的Y轴刻度,用于表示不同量纲或变化幅度较大的数据。

例如:

import matplotlib.pyplot as plt
import numpy as np
plt.style.use('_mpl-gallery')
# 生成数据
x = np.linspace(0, 10, 100)
y = 4 + 2 * np.sin(2 * x)

# plot
fig, ax = plt.subplots()

ax.plot(x, y, linewidth=2.0)

ax.set(xlim=(0, 8), xticks=np.arange(1, 8),
       ylim=(0, 8), yticks=np.arange(1, 8))
plt.show()

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

scatter(x, y)

scatter(x, y)函数用于绘制散点图。散点图是一种用于展示两个变量之间关系的图表类型,每个数据点由两个数值(X轴和Y轴上的值)表示,以点的形式在图表上进行表示。

scatter(x, y)函数接受两个参数:

  • x:表示X轴上的数据点的值,通常是一个数组或列表,表示自变量的取值。
  • y:表示Y轴上的数据点的值,也是一个数组或列表,表示因变量的取值。

散点图通过在坐标系中放置单个数据点来展示两个变量之间的关系。以下是一些散点图的特点和用途:

  1. 相关性检测:通过绘制散点图,可以观察两个变量之间的关系,判断它们之间是否存在线性相关性、正相关还是负相关。
  2. 分布情况:散点图可以用来展示数据的分布情况,特别是在两个维度上都有变化的情况下。
  3. 聚类分析:当数据点在图上聚集成群时,散点图可以帮助识别是否存在多个聚类或群集。
  4. 异常值识别:通过观察散点图,可以识别出位于数据集中的异常值或离群点。
  5. 多变量关系:散点图也可以用于展示多个变量之间的关系,通过使用不同的颜色、大小或形状来表示不同的变量。

比如生成一个显示汽车速度与制动距离关系的散点图,其中每个数据点表示一个速度-制动距离的对应关系:

import matplotlib.pyplot as plt
# 设置全局字体为支持中文的字体
plt.rcParams['font.sans-serif'] = ['SimHei']  # 指定微软雅黑或其他中文字体

# 示例数据:汽车速度与制动距离的关系
speed = [4, 7, 11, 15, 18, 20, 22, 24, 26, 29]
brake_distance = [2, 4, 7, 10, 12, 15, 18, 22, 25, 28]

# 创建散点图
plt.figure(figsize=(8, 6))  # 设置图像大小
plt.scatter(speed, brake_distance, color='blue', marker='o', label='数据点')  # 绘制散点图
plt.title('汽车速度与制动距离关系')  # 添加标题
plt.xlabel('速度 (mph)')  # 添加X轴标签
plt.ylabel('制动距离 (ft)')  # 添加Y轴标签
plt.legend()  # 显示图例
plt.grid(True)  # 添加网格线
plt.show()  # 显示图像

在这里插入图片描述

在使用scatter(x, y)函数时,还可以通过设置参数来定制散点图的外观,如点的大小、颜色、标记形状等,以便更好地传达数据的信息。

例如生成一个具有随机数据点、自定义样式和点大小、颜色的散点图:

import matplotlib.pyplot as plt
import numpy as np
# 创建数据
np.random.seed(3)
x = 4 + np.random.normal(0, 2, 24)  # 生成24个随机数,以4为中心,标准差为2
y = 4 + np.random.normal(0, 2, len(x))  # 生成与x相同数量的随机数,以4为中心,标准差为2
# 设置点的大小和颜色
sizes = np.random.uniform(15, 80, len(x))  # 生成在15和80之间的随机数作为点的大小
colors = np.random.uniform(15, 80, len(x))  # 生成在15和80之间的随机数作为颜色

# 绘制散点图
fig, ax = plt.subplots()  # 创建一个图像和坐标轴的组合
ax.scatter(x, y, s=sizes, c=colors, vmin=0, vmax=100)  # 绘制散点图,设置点的大小和颜色的范围

# 设置坐标轴范围和刻度
ax.set(xlim=(0, 8), xticks=np.arange(1, 8),
       ylim=(0, 8), yticks=np.arange(1, 8))

plt.show()  # 显示图像

在这里插入图片描述

bar(x, height)

bar(x, height)函数用于绘制条形图(柱状图)。条形图是一种常用的数据可视化方式,用于展示不同类别或组之间的比较。每个条形的高度表示与该类别或组相关联的数值。

bar(x, height)函数接受两个主要参数:

  • x:表示条形的位置,通常是一个数组或列表,表示每个条形的位置。
  • height:表示每个条形的高度,也是一个数组或列表,表示每个条形的数值。

以下是一些关于bar(x, height)函数的特点和用途:

  1. 分类比较
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值