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实现进程间通信简单实例
Jul 23 Python
Python中的XML库4Suite Server的介绍
Apr 14 Python
介绍Python的Django框架中的静态资源管理器django-pipeline
Apr 25 Python
python安装以及IDE的配置教程
Apr 29 Python
python购物车程序简单代码
Apr 18 Python
python递归函数绘制分形树的方法
Jun 22 Python
Python 实现王者荣耀中的敏感词过滤示例
Jan 21 Python
python网络应用开发知识点浅析
May 28 Python
关于多元线性回归分析——Python&amp;SPSS
Feb 24 Python
Python 统计位数为偶数的数字代码详解
Mar 15 Python
Python接口自动化测试框架运行原理及流程
Nov 30 Python
python Matplotlib基础--如何添加文本和标注
Jan 26 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/10 PHP
PHP ajax 异步执行不等待执行结果的处理方法
2015/05/27 PHP
php提取微信账单的有效信息
2018/10/01 PHP
PHP+Apache实现二级域名之间共享cookie的方法
2019/07/24 PHP
33种Javascript 表格排序控件收集
2009/12/03 Javascript
js中查找最近的共有祖先元素的实现代码
2010/12/30 Javascript
JQuery扩展插件Validate 5添加自定义验证方法
2011/09/05 Javascript
js实现目录定位正文示例
2013/11/14 Javascript
JS遍历Json字符串中键值对先转成JSON对象再遍历
2014/08/15 Javascript
详解JavaScript的Date对象(制作简易钟表)
2020/04/07 Javascript
node.js实现端口转发
2016/04/14 Javascript
使用jQuery UI库开发Web界面的简单入门指引
2016/04/22 Javascript
JavaScript对Json的增删改属性详解
2016/06/02 Javascript
js前端实现多图图片上传预览的两个方法(推荐)
2016/11/18 Javascript
ztree实现权限横向显示功能
2017/05/20 Javascript
详解基于Node.js的微信JS-SDK后端接口实现代码
2017/07/15 Javascript
anime.js 实现带有描边动画效果的复选框(推荐)
2017/12/24 Javascript
nodejs更新package.json中的dependencies依赖到最新版本的方法
2018/10/10 NodeJs
VUE基于NUXT的SSR 服务端渲染
2018/11/30 Javascript
vue3 源码解读之 time slicing的使用方法
2019/10/31 Javascript
js实现鼠标切换图片(无定时器)
2021/01/27 Javascript
Python解析最简单的验证码
2016/01/07 Python
python的else子句使用指南
2016/02/27 Python
PyCharm设置每行最大长度限制的方法
2019/01/16 Python
Pytorch反向求导更新网络参数的方法
2019/08/17 Python
Python: glob匹配文件的操作
2020/12/11 Python
python爬虫beautifulsoup库使用操作教程全解(python爬虫基础入门)
2021/02/19 Python
一款纯css3实现的鼠标经过按钮特效教程
2014/11/09 HTML / CSS
Emporio Armani腕表天猫官方旗舰店:乔治·阿玛尼为年轻人设计的副线品牌
2017/07/02 全球购物
科室工作个人总结的自我评价
2013/10/29 职场文书
2016党员党章学习心得体会
2016/01/14 职场文书
公司晚会主持词
2019/04/17 职场文书
利用javaScript处理常用事件详解
2021/04/14 Javascript
Python Pandas pandas.read_sql_query函数实例用法分析
2021/06/21 Python
详解ZABBIX监控ESXI主机的问题
2022/06/21 Servers
LyScript实现绕过反调试保护的示例详解
2022/08/14 Python