Matplotlib 基本用法
1、基础应用
- >>> import matplotlib.pyplot as plt
- >>> import numpy as np
- #使用np.linspace定义x:范围是(-1,1);个数是50. 仿真一维数据组(x ,y)表示曲线1
- >>> x = np.linspace(-1, 1, 50)
- >>> y = 2*x + 1
- #使用plt.figure定义一个图像窗口. 使用plt.plot画(x ,y)曲线. 使用plt.show显示图像.
- >>> plt.figure()
- <Figure size 640x480 with 0 Axes>
- >>> plt.plot(x, y)
- [<matplotlib.lines.Line2D object at 0x000001E9980C9668>]
- >>> plt.show()
2、简单的线条
matplotlib 的 figure 就是一个 单独的 figure 小窗口, 小窗口里面还可以有更多的小图片.
- #使用np.linspace定义x:范围是(-3,3);个数是50. 仿真一维数据组(x ,y1)表示曲线1. 仿真一维数据组(x ,y2)表示曲线2.
- >>> x = np.linspace(-3, 3, 50)
- >>> y1 = 2*x + 1
- >>> y2 = x**2
- >>> plt.figure()
- <Figure size 640x480 with 0 Axes>
- >>> plt.plot(x, y1)
- [<matplotlib.lines.Line2D object at 0x000001E998804EB8>]
- >>> plt.show()
- #使用plt.figure定义一个图像窗口:编号为3;大小为(8, 5). 使用plt.plot画(x ,y2)曲线. 使用plt.plot画(x ,y1)曲线,曲线的颜色属性(color)为红色;曲线的宽度(linewidth)为1.0;曲线的类型(linestyle)为虚线. 使用plt.show显示图像.
- >>> plt.figure(num=3, figsize=(8, 5),)
- <Figure size 800x500 with 0 Axes>
- >>> plt.plot(x, y2)
- [<matplotlib.lines.Line2D object at 0x000001C38F43C048>]
- >>> plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--')
- [<matplotlib.lines.Line2D object at 0x000001C38F43C208>]
- >>> plt.show()
3、设置坐标轴
- >>> x = np.linspace(-3, 3, 50)
- >>> y1 = 2*x + 1
- >>> y2 = x**2
- #使用plt.figure定义一个图像窗口. 使用plt.plot画(x ,y2)曲线. 使用plt.plot画(x ,y1)曲线,曲线的颜色属性(color)为红色;曲线的宽度(linewidth)为1.0;曲线的类型(linestyle)为虚线.
- >>> plt.figure()
- <Figure size 640x480 with 0 Axes>
- >>> plt.plot(x, y2)
- [<matplotlib.lines.Line2D object at 0x000001C38F2CD5F8>]
- >>> plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--')
- [<matplotlib.lines.Line2D object at 0x000001C38F2CD7B8>]
- #使用plt.xlim设置x坐标轴范围:(-1, 2); 使用plt.ylim设置y坐标轴范围:(-2, 3); 使用plt.xlabel设置x坐标轴名称:’I am x’; 使用plt.ylabel设置y坐标轴名称:’I am y’;
- >>> plt.xlim((-1, 2))
- (-1, 2)
- >>> plt.ylim((-2, 3))
- (-2, 3)
- >>> plt.xlabel('I am x')
- Text(0.5,0,'I am x')
- >>> plt.ylabel('I am y')
- Text(0,0.5,'I am y')
- >>> plt.show()
- #使用np.linspace定义范围以及个数:范围是(-1,2);个数是5. 使用print打印出新定义的范围. 使用plt.xticks设置x轴刻度:范围是(-1,2);个数是5
- >>> new_ticks = np.linspace(-1, 2, 5)
- >>> print(new_ticks)
- [-1. -0.25 0.5 1.25 2. ]
- >>> plt.xticks(new_ticks)
- ([<matplotlib.axis.XTick object at 0x000001C38F5ADF60>, <matplotlib.axis.XTick object at 0x000001C38F5ADBA8>, <matplotlib.axis.XTick object at 0x000001C38F5AD320>, <matplotlib.axis.XTick object at 0x000001C38F4BD320>, <matplotlib.axis.XTick object at 0x000001C38F4B44E0>], <a list of 5 Text xticklabel objects>)
- #使用plt.yticks设置y轴刻度以及名称:刻度为[-2, -1.8, -1, 1.22, 3];对应刻度的名称为[‘really bad’,’bad’,’normal’,’good’, ‘really good’]. 使用plt.show显示图像.
- >>> plt.yticks([-2, -1.8, -1, 1.22, 3],[r'$really\ bad$', r'$bad$', r'$normal$', r'$good$', r'$really\ good$'])
- ([<matplotlib.axis.YTick object at 0x000001C3832A15F8>, <matplotlib.axis.YTick object at 0x000001C38F5A6B70>, <matplotlib.axis.YTick object at 0x000001C38F5AD240>, <matplotlib.axis.YTick object at 0x000001C38F4B4FD0>, <matplotlib.axis.YTick object at 0x000001C38F4C79E8>], <a list of 5 Text yticklabel objects>)
- >>> plt.show()
4、设置不同的名字和位置
- >>> import matplotlib.pyplot as plt
- >>> import numpy as np
- >>> x = np.linspace(-3, 3, 50)
- >>> y1 = 2*x + 1
- >>> y2 = x**2
- >>> plt.figure()
- <Figure size 640x480 with 0 Axes>
- >>> plt.plot(x, y2)
- [<matplotlib.lines.Line2D object at 0x000001C38E1099B0>]
- >>> plt.plot(x, y1, color='red', linewidth=1.0, linestyle='--')
- [<matplotlib.lines.Line2D object at 0x000001C38E1095C0>]
- >>> plt.xlim((-1, 2))
- (-1, 2)
- >>> plt.ylim((-2, 3))
- (-2, 3)
- >>> new_ticks = np.linspace(-1, 2, 5)
- >>> plt.xticks(new_ticks)
- ([<matplotlib.axis.XTick object at 0x000001C38F2DD860>, <matplotlib.axis.XTick object at 0x000001C3832862E8>, <matplotlib.axis.XTick object at 0x000001C38F47FAC8>, <matplotlib.axis.XTick object at 0x000001C38D91B240>, <matplotlib.axis.XTick object at 0x000001C38D91BCC0>], <a list of 5 Text xticklabel objects>)
- >>> plt.yticks([-2, -1.8, -1, 1.22, 3],['$really\ bad$', '$bad$', '$normal$', '$good$', '$really\ good$'])
- ([<matplotlib.axis.YTick object at 0x000001C38F4410B8>, <matplotlib.axis.YTick object at 0x000001C38F487AC8>, <matplotlib.axis.YTick object at 0x000001C38F47F0B8>, <matplotlib.axis.YTick object at 0x000001C38B7A2C50>, <matplotlib.axis.YTick object at 0x000001C38B7A2AC8>], <a list of 5 Text yticklabel objects>)
- #使用plt.gca获取当前坐标轴信息. 使用.spines设置边框:右侧边框;使用.set_color设置边框颜色:默认白色; 使用.spines设置边框:上边框;使用.set_color设置边框颜色:默认白色;
- >>> ax = plt.gca()
- >>> ax.spines['right'].set_color('none')
- >>> ax.spines['top'].set_color('none')
- >>> plt.show()
5、调整坐标轴
- #使用.xaxis.set_ticks_position设置x坐标刻度数字或名称的位置:bottom.(所有位置:top,bottom,both,default,none)
- >>> ax.xaxis.set_ticks_position('bottom')
- #使用.spines设置边框:x轴;使用.set_position设置边框位置:y=0的位置;(位置所有属性:outward,axes,data)
- >>> ax.spines['bottom'].set_position(('data', 0))
- #使用.yaxis.set_ticks_position设置y坐标刻度数字或名称的位置:left.(所有位置:left,right,both,default,none)
- >>> ax.yaxis.set_ticks_position('left')
- #使用.spines设置边框:y轴;使用.set_position设置边框位置:x=0的位置;(位置所有属性:outward,axes,data) 使用plt.show显示图像.
- >>> ax.spines['left'].set_position(('data',0))
- >>> plt.show()
Matplotlib 基本用法的更多相关文章
- matplotlib基本用法-【老鱼学matplotlib】
本文介绍一下matplotlib的最基本用法. 这次我们要显示一个线性方程的直线. 首先要引入matplotlib库,一般是用plt这个简写的,我们就按照大多数人的惯例来进行命名: import ma ...
- matplotlib 高级用法实例--共享x轴
http://localhost:8888/notebooks/duanqs/matplotlib_advanced_example.ipynb 我不会弄呀, 刚才从matplotlib文档里吧示例用 ...
- Matplotlib 绘图 用法
Matplotlib基础知识 一.Matplotlib基础知识 Matplotlib中的基本图表包括的元素 x轴和y轴 axis 水平和垂直的轴线 x轴和y轴刻度 tick 刻度标示坐标轴的分隔,包括 ...
- 数据分析——matplotlib的用法
Matplotlib是一个强大的Python绘图和数据可视化的工具包.数据可视化也是我们数据分析的最重要的工作之一,可以帮助我们完成很多操作,例如:找出异常值.必要的一些数据转换等.完成数据分析的最终 ...
- Matplotlib用法
一 环境安装 Make sure you have installed numpy. 先安装np pip install matplotlib (Python2.X) pip3 install mat ...
- [数据]matplotlib总结
这里权当一个matplotlib的用法小结,主要用于记录,以防忘记. 需要安装一下Anaconda,这里推荐清华大学的镜像:https://mirrors.tuna.tsinghua.edu.cn/h ...
- 数据可视化之Matplotlib的使用
1.什么是数据可视化 数据可视化在量化分析当中是一个非常关键的辅助工具,往往我们需要通过可视化技术,对我们的数据进行更清晰的展示,这样也能帮助我们理解交易.理解数据.通过数据的可视化也可以更快速的发现 ...
- matplotlib | Python强大的作图工具,让你从此驾驭图表
今天是数据处理专题的第9篇文章,在之前的8篇文章当中我们已经介绍完了pandas这个库的一些基本用法,我们先把一些冷门的高级用法放一放,先来给大家介绍一下另外一个很有用的数据分析库--matplotl ...
- 前置机器学习(五):30分钟掌握常用Matplitlib用法
Matplotlib 是建立在NumPy基础之上的Python绘图库,是在机器学习中用于数据可视化的工具. 我们在前面的文章讲过NumPy的用法,这里我们就不展开讨论NumPy的相关知识了. Matp ...
随机推荐
- Redis 总结精讲 看一篇成高手系统-4
本文围绕以下几点进行阐述 1.为什么使用redis2.使用redis有什么缺点3.单线程的redis为什么这么快4.redis的数据类型,以及每种数据类型的使用场景5.redis的过期策略以及内存淘汰 ...
- sublime text 3 vue 语法高亮
1.下载文件 链接 https://github.com/vuejs/vue-syntax-highlight 2.sublime菜单栏->Preferences->Browse Pack ...
- TCP/IP学习20180629-数据链路层-ARP、IP
1.数据链路层:IP.ARP.RARPARP协议用来找到目标主机的Ethernet网卡Mac地址,IP协议用来承载数据ARP协议找到目标,IP协议传输数据2.IP协议ip协议是TCP/IP协议的核心, ...
- workerman相关
(1)workerman linxu 内核优化 http://doc.workerman.net/315302 (2)workerman 安装环境配置 http://doc.workerman.ne ...
- jmeter分布式、linux运行
一.jmeter分布式压测(多台电脑一起压测) 1.有多台电脑,每台电脑上都有jmeter,而且这几台电脑都互相能ping通 2.在我的电脑的jmeter,bin目录下,修改jmeter.proper ...
- html/css/js-layer弹出层的初次使用
学习前端有时很多时候要用到弹出层,原生的js写有些麻烦,而且不美观,基于jQuery的弹出层组件layer应运而生,近些年来备受青睐.官网上有使用教程,但当初用的时候还是糊里糊涂,今天来记录一下lay ...
- python http请求及多线程应用
目录 概述 tomorrow包准备 运行环境遇到的问题 其他尝试未果 概述 今天, 使用python3 模拟下发包, http get 请求, 然后 采用tomorrow 多线程. 代码如下: # c ...
- J2EE十三个技术规范
从事Java开发的童鞋都知道,java是一种非常棒的语言,能够实现跨平台运行.它屏蔽了具体的平台环境的要求,也就是说,无论是windows,还是Unix.Linux系统,只要支持Java虚拟机,就可以 ...
- Merge Into 语句代替Insert/Update在Oracle中的应用实战
动机: 想在Oracle中用一条SQL语句直接进行Insert/Update的操作. 说明: 在进行SQL语句编写时,我们经常会遇到大量的同时进行Insert/Update的语句 ,也就是说当存在记录 ...
- 【函数】isinstance内建函数(小窗help)
#学到了第八天,还有很多没有理解,不过,没关系,相信任何复杂的问题都是由简单的组成,只有将每一个细节理解到位,自然问题迎刃而解 今天遇到了isinstace函数,忘了,先看一下语法 查百度附上链接:h ...