matplotlib使用方法

1.matplotlib简介

matplotlib是一个用于创建出版质量图表的桌面绘图包(主要是2D方面)。

该项目是由John Hunter于2002年启动的,matplotlib支持各种操作系统上许多不同的GUI后端,而且还能将图片导出为各种常见的矢量(vector)和光栅(raster)图:PDF、SVG、JPG、PNG、BMP、GIF等。

2.matplotlib安装

python中有许多的包,在使用是就可以直接在python中调用该包中的模块,为此,在使用一些包的时候,我们需要先去安装包,关于(如何导入包,包中的模块、以及如何制造包在我的博客中的python专栏中介绍了这些内容,有需要的可以自行查阅

安装的最简单直接的方法是:在python下的scripts文件进入cmd命令,然后输入:

pip install matplotlib

注意事项

在安装的时候,由于每个人的安装环境是不尽相同,多以在安装时会会遇到一些问题这时候可以在CSDN中查阅,有很多解决此类问题的帖子,在学习中也可遇到别的问题也需要查阅相关问题的解决办法

3.matplotlib的使用

首先是导入matplotlib中的一些模块

import matplotlib.pyplot as plt

案例1:(快速体验)

import matplotlib.pyplot as plt 
import numpy as np

data=np.arange(10)
print(f'data={
     data}')
#上面的输出为:data=[0 1 2 3 4 5 6 7 8 9]
plt.plot(data)
plt.show()

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

tips:

此时一定有这样的疑问,在绘制图形是,为什么,只是提供一个数据,可以绘制出一个二维图形,之所以这样:

是因为在绘制图形时,会默认赋值给x轴的坐标是从0开始的数据例如:上图[0 1 2 3 4 5 6 7 8 9],所以第一个点是(0,0),第二个点是(1,1)后面的点以此类推

示例:修改x的坐标为[2,4,5,6,7,8,9,10,11,11]

修改后的代码为:

data_y=np.arange(10)
print(f'data={
     data_y}')
data_x=[2,4,5,6,7,8,9,10,11,11]
plt.plot(data_x,data_y)
plt.show()

输出结果为:
在这里插入图片描述

3.1Figure和Subplot

matplotlib的图像都位于Figure对象中可以用plt.figure创建一个新的Figure

tips:
对图形进行分隔成不同的画图区域,和matlab中的划分是类似的

演示代码:


fig=plt.figure()
figure1=fig.add_subplot(2,2,1)

plt.show()

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

注意事项

此时的add_subplot(2,2,1)的含义是将figure划分成2*2,也就是四份,然后取第一份

在这里插入图片描述

tips:

此时的排列和matlab是不一样的的matlab是按列排序

示例:(在一个图中绘制多个子图)


fig = plt.figure()
ax1 = fig.add_subplot(2, 2, 1)
ax2 = fig.add_subplot(2, 2, 2)
ax3 = fig.add_subplot(2, 2, 3)
#此时在子图中绘制图形,不需要再使用plt.plot
ax1.plot(np.random.randn(50).cumsum(), 'k--')
ax2.hist(np.random.randn(100), bins=20, color='k', alpha=0.3)#绘制柱状图
ax3.scatter(np.arange(30), np.arange(30) + 3 * np.random.randn(30))#绘制散点图
plt.show()

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

3.2调整subplot周围的间距

fig, axes = plt.subplots(2, 2, sharex=True, sharey=True)#设置相同的x轴和y轴
for i in range(2):
    for j in range(2):
        axes[i, j].hist
  • 7
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值