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时区设置方法与pytz查询时区教程
Nov 27 Python
python基本语法练习实例
Sep 19 Python
想学python 这5本书籍你必看!
Dec 11 Python
python输入多行字符串的方法总结
Jul 02 Python
Python如何使用argparse模块处理命令行参数
Dec 11 Python
Python接口自动化判断元素原理解析
Feb 24 Python
python selenium自动化测试框架搭建的方法步骤
Jun 14 Python
Python-jenkins模块获取jobs的执行状态操作
May 12 Python
Django实现内容缓存实例方法
Jun 30 Python
通过案例解析python鸭子类型相关原理
Oct 10 Python
pandas取dataframe特定行列的实现方法
May 24 Python
关于 Python json中load和loads区别
Nov 07 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 应用程序安全防范技术研究
2009/09/25 PHP
PHP计划任务、定时执行任务的实现代码
2011/04/23 PHP
thinkPHP内置字符串截取函数用法详解
2016/11/15 PHP
PHP array_shift()用法实例分析
2019/01/07 PHP
php设计模式之适配器模式原理、用法及注意事项详解
2019/09/24 PHP
User Scripts: Video Download by User Scripts
2007/05/14 Javascript
关闭ie窗口清除Session的解决方法
2014/01/10 Javascript
JS实现两个大数(整数)相乘
2014/04/28 Javascript
jquery中的ajax方法怎样通过JSONP进行远程调用
2014/05/04 Javascript
node.js中的http.response.writeHead方法使用说明
2014/12/14 Javascript
javascript格式化json显示实例分析
2015/04/21 Javascript
jQuery+AJAX实现无刷新下拉加载更多
2015/07/03 Javascript
Boostrap栅格系统与自己额外定义的媒体查询的冲突问题
2017/02/19 Javascript
Vue实现左右菜单联动实现代码
2018/08/12 Javascript
vue 进阶之实现父子组件间的传值
2019/04/26 Javascript
js实现简单扫雷
2020/11/27 Javascript
在vue中给后台接口传的值为数组的格式代码
2020/11/12 Javascript
[01:09:16]DOTA2-DPC中国联赛 正赛 SAG vs Dynasty BO3 第一场 1月25日
2021/03/11 DOTA
python使用xmlrpclib模块实现对百度google的ping功能
2015/06/02 Python
使用python绘制常用的图表
2016/08/27 Python
Python使用sorted排序的方法小结
2017/07/28 Python
基于Django的python验证码(实例讲解)
2017/10/23 Python
Python检查ping终端的方法
2019/01/26 Python
Python多线程thread及模块使用实例
2020/04/28 Python
Python如何发送与接收大型数组
2020/08/07 Python
美国综合购物商城:UnbeatableSale.com
2018/11/28 全球购物
Hudson Jeans官网:高级精制牛仔裤
2018/11/28 全球购物
古驰英国官网:GUCCI英国
2020/03/07 全球购物
大专学生推荐信范文
2013/11/19 职场文书
工厂保安员岗位职责
2014/01/31 职场文书
2016年秋季新学期致辞
2015/07/30 职场文书
个人工作决心书
2015/09/22 职场文书
2016幼儿园新学期寄语
2015/12/03 职场文书
解决Django transaction进行事务管理踩过的坑
2021/04/24 Python
教你修复 Win11应用商店加载空白问题
2021/12/06 数码科技
解决redis批量删除key值的问题
2022/03/23 Redis