python Matplotlib模块的使用


Posted in Python onSeptember 16, 2020

一、Matplotlib简介与安装

Matplotlib也就是Matrix Plot Library,顾名思义,是Python的绘图库。它可与NumPy一起使用,提供了一种有效的MATLAB开源替代方案。它也可以和图形工具包一起使用,如PyQt和wxPython。

安装方式:执行命令 pip install matplotlib

一般常用的是它的子包PyPlot,提供类似MATLAB的绘图框架。

二、使用方法

1.绘制一条直线 y = 3 * x + 4,其中 x 在(-2, 2),取100个点平均分布

# -*- coding: utf-8 -*-

import matplotlib.pyplot as plt
import numpy as np

# 创建数据
x = np.linspace(-2, 2, 100)
y = 3 * x + 4

# 创建图像
plt.plot(x, y)

# 显示图像
plt.show()

2.在一张图里绘制多个子图

# -*- coding: utf-8 -*-

import numpy as np
import matplotlib.pyplot as plt

from matplotlib.ticker import NullFormatter

"""
多个子图
"""

# 为了能够复现
np.random.seed(1)

y = np.random.normal(loc=0.5, scale=0.4, size=1000)
y = y[(y > 0) & (y < 1)]
y.sort()
x = np.arange(len(y))

plt.figure(1)

# linear
# 使用.subplot()方法创建子图,221表示2行2列第1个位置
plt.subplot(221)
plt.plot(x, y)
plt.yscale('linear')
plt.title('linear')
plt.grid(True)

# log
plt.subplot(222)
plt.plot(x, y)
plt.yscale('log')
plt.title('log')
plt.grid(True)

# symmetric log
plt.subplot(223)
plt.plot(x, y - y.mean())
plt.yscale('symlog', linthreshy=0.01)
plt.title('symlog')
plt.grid(True)

# logit
plt.subplot(224)
plt.plot(x, y)
plt.yscale('logit')
plt.title('logit')
plt.grid(True)
plt.gca().yaxis.set_minor_formatter(NullFormatter())
plt.subplots_adjust(top=0.92, bottom=0.08, left=0.10, right=0.95, hspace=0.25,
          wspace=0.35)

plt.show()

3.绘制一个碗状的3D图形,着色使用彩虹色

# -*- coding: utf-8 -*-

import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import numpy as np

"""
碗状图形
"""

fig = plt.figure(figsize=(8, 5))
ax1 = Axes3D(fig)

alpha = 0.8
r = np.linspace(-alpha, alpha, 100)
X, Y = np.meshgrid(r, r)
l = 1. / (1 + np.exp(-(X ** 2 + Y ** 2)))

ax1.plot_wireframe(X, Y, l)
ax1.plot_surface(X, Y, l, cmap=plt.get_cmap("rainbow")) # 彩虹配色
ax1.set_title("Bowl shape")

plt.show()

4.更多用法

参见官网文档

以上就是python Matplotlib模块的使用的详细内容,更多关于python Matplotlib模块的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python使用socket远程连接错误处理方法
Apr 29 Python
使用Mixin设计模式进行Python编程的方法讲解
Jun 21 Python
安装Python和pygame及相应的环境变量配置(图文教程)
Jun 04 Python
python中关于for循环的碎碎念
Jun 30 Python
Python实现的堆排序算法示例
Apr 29 Python
Python3 安装PyQt5及exe打包图文教程
Jan 08 Python
Django 迁移、操作数据库的方法
Aug 02 Python
对Django中内置的User模型实例详解
Aug 16 Python
sklearn-SVC实现与类参数详解
Dec 10 Python
pytorch 获取tensor维度信息示例
Jan 03 Python
浅谈Python线程的同步互斥与死锁
Mar 22 Python
python如何写出表白程序
Jun 01 Python
Python类成员继承重写的实现
Sep 16 #Python
PyCharm设置注释字体颜色以及是否倾斜的操作
Sep 16 #Python
Python面向对象多态实现原理及代码实例
Sep 16 #Python
Python使用pycharm导入pymysql教程
Sep 16 #Python
pycharm中如何自定义设置通过“ctrl+滚轮”进行放大和缩小实现方法
Sep 16 #Python
基于Python实现体育彩票选号器功能代码实例
Sep 16 #Python
Python面向对象特殊属性及方法解析
Sep 16 #Python
You might like
PHP程序漏洞产生的原因分析与防范方法说明
2014/03/06 PHP
PHP实现ftp上传文件示例
2014/08/21 PHP
PHP中类的继承和用法实例分析
2016/05/24 PHP
php自定义函数转换html标签示例
2016/09/29 PHP
利用PHP_XLSXWriter代替PHPExcel的方法示例
2017/07/16 PHP
基于thinkphp5框架实现微信小程序支付 退款 订单查询 退款查询操作
2020/08/17 PHP
关于文本限制字数的js代码
2007/04/02 Javascript
删除条目时弹出的确认对话框
2014/06/05 Javascript
网页下载文件期间如何防止用户对网页进行其他操作
2014/06/27 Javascript
Javascript中的高阶函数介绍
2015/03/15 Javascript
实例剖析AngularJS框架中数据的双向绑定运用
2016/03/04 Javascript
Bootstrap零基础入门教程(二)
2016/07/18 Javascript
Node.js + Redis Sorted Set实现任务队列
2016/09/19 Javascript
移动端利用H5实现压缩图片上传功能
2017/03/29 Javascript
解决vue axios的封装 请求状态的错误提示问题
2018/09/25 Javascript
Vue中Table组件Select的勾选和取消勾选事件详解
2019/03/19 Javascript
微信小程序 swiper 组件遇到的问题及解决方法
2019/05/26 Javascript
Layer.js实现表格溢出内容省略号显示,悬停显示全部的方法
2019/09/16 Javascript
vue 组件内获取actions的response方式
2019/11/08 Javascript
Python常用正则表达式符号浅析
2014/08/13 Python
详解Tensorflow数据读取有三种方式(next_batch)
2018/02/01 Python
django 解决manage.py migrate无效的问题
2018/05/27 Python
如何更改 pandas dataframe 中两列的位置
2019/12/27 Python
python通过cython加密代码
2020/12/11 Python
倩碧香港官方网站:Clinique香港
2017/11/13 全球购物
大学生毕业求职找工作的自我评价
2013/09/29 职场文书
4s客服专员岗位职责
2013/12/01 职场文书
综合实践教学反思
2014/01/31 职场文书
乔布斯斯坦福大学演讲稿
2014/05/23 职场文书
七夕活动策划方案
2014/08/16 职场文书
党员教师个人对照检查材料范文
2014/09/25 职场文书
初三学生语文考试作弊检讨书
2014/12/14 职场文书
2016国庆节活动宣传语
2015/11/25 职场文书
《秋天的怀念》教学反思
2016/02/17 职场文书
一文搞懂Golang 时间和日期相关函数
2021/12/06 Golang
Kubernetes中Deployment的升级与回滚
2022/04/01 Servers