当前位置:   article > 正文

Python中 Matplotlib库的使用(1)_import matplotlib.pyplot as plt的作用

import matplotlib.pyplot as plt的作用

Matplotlib是一个综合库,用于在Python中创建静态,动画和交互式可视化。matplotlib是matrix + plot + library的缩写,通过Matplotlib,仅需要几行代码,便可以生成直方图,条形图,散点图等。
绘图的两种方法:pyplot面向对象
pyplot:matplotlib.pyplot是使matplotlib像MATLAB一样工作的命令样式函数的集合。每个pyplot函数对一个图进行一些更改,例如,创建图,设置横纵坐标、标题等等。
面向对象:面向对象是指创建一个图对象Figure,在创建多个Axes进行绘图,一个Figure可以包含多个Axes,可以理解以为一次plot就用来一次Axes。
两种方法都能达到一样的效果,plot操作更加简便,这里仅是对pyplot的简单介绍,下面是对Matplotlib.pyplot库函数的一些讲解。
首先是Matplotlib库的安装,这里直接使用pip安装,输入指令:
pip install matplotlib
首先事figure()函数,这个函数的作用是创建一个画布。

figure(num=None,  # autoincrement if None, else integer from 1-N
           figsize=None,  # defaults to rc figure.figsize
           dpi=None,  # defaults to rc figure.dpi
           facecolor=None,  # defaults to rc figure.facecolor
           edgecolor=None,  # defaults to rc figure.edgecolor
           frameon=True,
           FigureClass=Figure,
           clear=False,
           **kwargs
           )          
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

这里挑常用的参数进行讲解,参数解释如下:

num:图形编号或名称,取值为数字/字符串
figsize:绘图对象的宽和高
dpi:绘图对象的分辨率,缺省值为80
facecolor:背景颜色
edgecolor:边框颜色
frameon:表示是否显示边框
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

代码:

import matplotlib.pyplot as plt

plt.figure(num="matplotlib",figsize=(4,4),facecolor='r',edgecolor='b',frameon=True)
plt.plot()
plt.show()
  • 1
  • 2
  • 3
  • 4
  • 5

运行结果:
在这里插入图片描述
绘制子图的函数subplot():

subplot(row, column,order): 
  • 1

参数解释:
row:行
column:列
order:子图的序列
代码:

import matplotlib.pyplot as plt

plt.figure("matplotlib",facecolor="r")
plt.subplot(1,2,1)
plt.subplot(1,2,2)

plt.show()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

运行结果:
在这里插入图片描述
在有时候我们想给图添加中文元素,但是会出现乱码或报错,需要引入运行参数rcParams,其配置如下:

plt.rcParams['font.family']="SimHei"
  • 1

几种常见字体,其他可自行查询。

中文字体英文描述中文字体英文描述
宋体SimSun黑体SimHei
微软雅黑Microsoft YaHe微软正黑体Microsoft JhengH
楷体KaiTi仿宋FangSong
隶书LiSu幼圆YouYuan

为图添加标题函数:

suptitle(标题):
title(标题)
  • 1
  • 2

其中suptitle对应于全局标题,title对应于子图的标题。
代码:

import matplotlib.pyplot as plt
plt.rcParams['font.family']="SimHei"


plt.figure()
plt.suptitle("全局标题")

plt.subplot(221)
plt.title("子标题1")
plt.subplot(222)
plt.title("子标题2")
plt.subplot(223)
plt.title("子标题3")
plt.subplot(224)
plt.title("子标题4")
# plt.tight_layout()
plt.show()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

运行结果:
在这里插入图片描述
可以看子标题3、4和子图1、2之间的间距不合适,有部分遮挡,这时可以使用tight_layout()函数,自动调整子图,消除遮挡,将上面隐去的代码恢复即可。
在使用到负号时也可能会因符号问题导致图中出现空白格,可以在代码段总放着一条语句:

plt.rcParams["axes.unicode_minus"]=False # 解决负号问题
  • 1

添加文本函数text():

text( x, y, s, fontsize,color )
  • 1

参数解释:
x:文字的横坐标(根据坐标轴范围变动)
y:文字的列坐标
s:文字(string格式)
fontsize:字体大小
color:字体颜色
其中坐标是根据坐标轴范围变动
代码:

import matplotlib.pyplot as plt

plt.figure("matplotlib",facecolor="w")
plt.plot()
plt.text(0.03,0.03,s="matplotlib",color="r")
plt.show()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

运行结果:在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/167096?site
推荐阅读
相关标签
  

闽ICP备14008679号