csdn同步更新,主页
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()
list
您可能想知道为什么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()
numpy
3、用关键字字符串绘图
在某些情况下,您拥有某种格式的数据,该格式允许您使用字符串访问特定变量。例如,使用 numpy.recarray
或pandas.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()
dict
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()
category
,,,
网友评论