【matplotlib教程】使用各种类型数据绘图

pyplot能够利用多种数据类型绘制图像,例如类别,numpy数组,字典等,本篇将逐一介绍如何利用不同的数据类型绘制图像

pyplot简介

matplotlib.pyplot是使matplotlib像MATLAB一样工作的命令样式函数的集合。每个pyplot功能都会对图形进行一些更改:例如,创建图形,在图形中创建绘图区域,在绘图区域中绘制一些线条,用标签装饰绘图等。

在matplotlib.pyplot各种状态下,函数调用之间会保留在一起,以便跟踪当前图形和绘图区域之类的内容,并且绘图功能指向当前轴(请注意,此处和文档中大多数地方的“轴”均指到轴 的图形的部分 和不超过一个轴线的严格的数学术语)。

1、使用列表数据绘图

使用pyplot我们可以非常便捷地生成可视化效果:

import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4])
plt.grid() # 显示网格
plt.ylabel('some numbers') # 显示y轴标签
plt.show()

在这里插入图片描述
您可能想知道为什么x轴的范围是0-3,而y轴的范围是1-4。如果为plot()命令提供单个列表或数组 ,则matplotlib假定它是y值的序列,并自动为您生成x值。由于python范围从0开始,因此默认x向量的长度与y相同,但从0开始。因此x数据为 :[0, 1, 2, 3]

我们也可以通过以下命令来绘制指定点:

plt.plot([1, 2, 3, 4], [1, 4, 9, 16])

2、使用numpy数组绘图

不只于列表,我们还可以使用numpy数组作为输入

import numpy as np

# evenly sampled time at 200ms intervals
t = np.arange(0., 5., 0.2)

# red dashes, blue squares and green triangles
plt.plot(t, t, 'r--', t, t**2, 'bs', t, t**3, 'g^')
plt.show()

在这里插入图片描述

3、用关键字字符串绘图

在某些情况下,您拥有某种格式的数据,该格式允许您使用字符串访问特定变量。例如,使用 numpy.recarraypandas.DataFrame

Matplotlib允许您为此类对象提供data关键字参数。如果提供的话,您可以使用与这些变量相对应的字符串生成图。

import matplotlib.pyplot as plt
import numpy as np

plt.grid()
data = {'a': np.arange(50),
        'c': np.random.randint(0, 50, 50),
        'd': np.random.randn(50)}
data['b'] = data['a'] + 10 * np.random.randn(50)
data['d'] = np.abs(data['d']) * 100

plt.scatter('a', 'b', c='c', s='d', data=data)
plt.xlabel('entry a')
plt.ylabel('entry b')
plt.show()

在这里插入图片描述

4、用分类变量绘图

可以使用分类变量创建图。Matplotlib允许您将类别变量直接传递给许多绘图函数。例如:

import matplotlib.pyplot as plt
import numpy as np

names = ['group_a', 'group_b', 'group_c']
values = [1, 10, 100]

plt.figure(figsize=(9, 3))

plt.subplot(131)
plt.bar(names, values)
plt.subplot(132)
plt.scatter(names, values)
plt.subplot(133)
plt.plot(names, values)
plt.suptitle('Categorical Plotting')
plt.show()

在这里插入图片描述


如果觉得ok,点个赞,点个关注,也欢迎给个打赏支持一下编者的工作
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章