Matplotlib学习笔记1
Posted ticmis
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Matplotlib学习笔记1相关的知识,希望对你有一定的参考价值。
Matplotlib学习笔记1 - 上手制作一些图表吧!
Matplotlib是一个面向Python的,专注于数据可视化的模块。
快速上手
这是使用频率最高的几个模块,在接下来的程序中,都需要把它们作为基础模块
import matplotlib as mpl
import matplotlib.pyplot as plt
import numpy as np
第一个图表
使用pyplot.plot函数,可以在坐标轴上画一条曲线。
plt.plot([1,2,3,4],[2,1,3,4])
plt.show()
让图表变得更加可读
使用pyplot.xlabel与pyplot.ylabel可以给图表的x轴与y轴进行标注;使用pyplot.title给图表起一个标题。在这个例子中,分别绘制了两次曲线,分别标注为了\'original\'和\'cos\',使用pyplot.legend可以为图表增加一个图例。
# Generate some data
x=np.arange(0,10,0.2)
y=np.cos(x)
# Plot the figure
plt.plot(x,x,\'r-\',label=\'original\')
plt.plot(x,y,\'b-\',label=\'cos\')
# Some decoration
plt.xlabel(\'Enter a\')
plt.ylabel(\'Enber b\')
plt.title(\'My first chart\')
plt.legend()
plt.show()
图表的组成部分
这是一个Matplotlib图表的组成示意图。
Figure: Figure囊括了整个图表(包括曲线啦~标题啦~坐标之类的),它有若干下属Axes子类
Axes:Axes是Figure的附属子类,包含了作图的区域。一般来说每个Axes会包含2个Axis类,在三维图中则含有3个。
绘制函数所支持的输入数据类型
并不是所有的数据都能顺利地被pyplot的绘制函数识别并绘成图表。一般来说函数支持numpy.array、numpy.ma.masked_array,或者可以被numpy.asarray转化(例如numpy.matrix)的数据类别。
Pyplot也支持通过一个“字典”来存储并运用数据,只需要在绘制函数中给出data关键字的参数,就可以通过字典的key,将字典中的数据导入绘制函数中。在下面的例子中,我们把各种变量存在\'data\'字典中,并通过下标来引用在在字典中的数据。
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
fig, ax = plt.subplots(figsize=(5, 2.7), layout=\'constrained\')
ax.scatter(\'a\', \'b\', c=\'c\', s=\'d\', data=data)
ax.set_xlabel(\'entry a\')
ax.set_ylabel(\'entry b\')
代码风格
显式交互与隐式交互
我们有两种不同的方式(或者说是两种不同的风格,因为本质上它们没有很大的区别)来与Matplotlib交互:
- 显式交互(Explicit interface)
显式地申明Figure与Axes变量,并通过它们调用函数(“面向对象” object-oriented 风格)
- 隐式交互(Implicit interface)
通过pyplot模块间接创建Figure和Axes,并用pyplot函数来绘图
以上是关于Matplotlib学习笔记1的主要内容,如果未能解决你的问题,请参考以下文章