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正则匹配查询港澳通行证办理进度示例分享
Dec 27 Python
python使用fileinput模块实现逐行读取文件的方法
Apr 29 Python
python比较两个列表大小的方法
Jul 11 Python
对Python 网络设备巡检脚本的实例讲解
Apr 22 Python
Python3.6中Twisted模块安装的问题与解决
Apr 15 Python
python频繁写入文件时提速的方法
Jun 26 Python
Python 实现OpenCV格式和PIL.Image格式互转
Jan 09 Python
解决启动django,浏览器显示“服务器拒绝访问”的问题
May 13 Python
Python如何实现爬取B站视频
May 20 Python
Python新手如何进行闭包时绑定变量操作
May 29 Python
详解Python的爬虫框架 Scrapy
Aug 03 Python
Python何绘制带有背景色块的折线图
Apr 23 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格式化电话号码的方法
2015/04/24 PHP
php5.2的curl-bug 服务器被php进程卡死问题排查
2016/09/19 PHP
javascript椭圆旋转相册实现代码
2012/01/16 Javascript
js获取RadioButtonList的Value/Text及选中值等信息实现代码
2013/03/05 Javascript
js截取字符串的两种方法及区别详解
2013/11/05 Javascript
使用Node.js为其他程序编写扩展的基本方法
2015/06/23 Javascript
复杂的javascript窗口分帧解析
2016/02/19 Javascript
Bootstrap布局方式详解
2016/05/27 Javascript
Vue组件BootPage实现简单的分页功能
2016/09/12 Javascript
使用Angular CLI生成路由的方法
2018/03/24 Javascript
基于vue的验证码组件的示例代码
2019/01/22 Javascript
如何自动化部署项目?折腾服务器之旅~
2019/04/16 Javascript
JavaScript迭代器的含义及用法
2019/06/21 Javascript
jQuery提示框插件SweetAlert用法分析
2019/08/05 jQuery
layui lay-verify form表单自定义验证规则详解
2019/09/18 Javascript
JavaScript图片旋转效果实现方法详解
2020/06/28 Javascript
跨平台python异步回调机制实现和使用方法
2013/11/26 Python
Python模糊查询本地文件夹去除文件后缀的实例(7行代码)
2017/11/09 Python
Python 3.3实现计算两个日期间隔秒数/天数的方法示例
2019/01/07 Python
使用pandas把某一列的字符值转换为数字的实例
2019/01/29 Python
Pandas之排序函数sort_values()的实现
2019/07/09 Python
scrapy redis配置文件setting参数详解
2020/11/18 Python
Pandas中DataFrame交换列顺序的方法实现
2020/12/14 Python
PurCotton全棉时代官网:100%天然棉花生产的生活护理用品
2016/11/18 全球购物
致跳远运动员广播稿
2014/02/11 职场文书
项目建议书格式
2014/03/12 职场文书
食品科学与工程专业毕业生求职信范文
2014/07/21 职场文书
城管执法人员个人对照检查材料思想汇报
2014/09/29 职场文书
2014年学生会生活部工作总结
2014/11/07 职场文书
学校捐书倡议书
2015/04/27 职场文书
2015年度酒店客房部工作总结
2015/05/25 职场文书
开天辟地观后感
2015/06/09 职场文书
《山中访友》教学反思
2016/02/24 职场文书
「Manga Time Kirara MAX」2022年5月号封面公开
2022/03/21 日漫
什么是SOLID
2022/03/24 Javascript
sql查询语句之平均分、最高最低分及排序语句
2022/05/30 MySQL