Matplotlib是一个强大的Python绘图和数据可视化的工具包。

  安装方法:pip install matplotlib
  引用方法:import matplotlib.pyplot as plt

绘图方法

  绘图函数:plt.plot() #调用函数生成图像
  显示图像:plt.show() #显示图像
  注意:每显示一次就会把创建的图对象数据清空,当需要再次显示的话,就需要再创建一个数据

绘图函数语法:plt.plot(["数据1","数据2","数据3",],"线的形状")

  参数:

  1、传值:仅传一个列表的话默认是y轴的数据,x赋值为0,1,2....;传入两个列表,分别代表x轴和y轴数据;
  2、线条属性:r-o :第一个代表颜色,第二个代表线条的样式,第三个代表点的形状【象形】。

示例:

画一条线:
  plt.plot([1,2,3,4]) #默认不写是一条蓝色的直线
  plt.plot([1,2,3,4],"ro") #红点
  plt.plot([1,2,3,4],[2,3,4,5],"ro") # 红点
  plt.plot([1,2,3,4],[2,3,4,5],"r-o") # 红线及点
画多条线:(可以写在一个函数里,也可以下多个,然后一起展示)
  plt.plot([1,2,3,4],[2,3,4,5],"r-.o",[4,5,6,7],[7,8,9,10],"r-o")
展示方法:
  plt.show()

plot函数各参数类型:
  线型linestyle(-,-.,--,..)
  点型marker(v,^,s,*,rs,H,+,x,D,o,…)
  颜色color(b,g,r,y,k,w,…)
plot函数绘制多条曲线
  标题:plt.title("名字") 定义图的标题
  x轴: plt.xlabel("x") 定义x轴轴标
  y轴: plt.ylabel("y") 定义y轴轴标

示例代码:

  plt.plot([1,2,3,4],[2,3,4,5],"ro") # 红点
  plt.xlabel("x")
  plt.ylabel("y")
  plt.title("test")
plt.show()

也可以对DataFrame数据进行绘图。要画哪列的图就通过索引取出某列,然后绘图。

例如:
  df['close'].plot() #绘图
  plt.show() #展示图

其他类型图像:
  hist 绘制频数直方图

import numpy as np
x = np.random.randint(0,10,100) #随机生成100个数
plt.hist(x)
plt.show() plt.hist(x,np.arange(10))
plt.show()

画布与图 (一个图形界面上有多张图)

1、先创建一个画布:figure

  fig = plt.figure() #创建画布

2、画子图:subplot

ax1 = fig.add_subplot(2,2,1) #前两个参数代表子图所占大小,第三个参数表示是第几张图

例如:#在画布上创建连张表
ax1 = fig.add_subplot(2,2,1)
ax2 = fig.add_subplot(2,2,2)
plt.show() #展示

3、可以在子图上绘制图像,绘图方法以上面介绍的plot一致!

  ax1.plot([数据参数],线的类型) 

调节子图间距:

  subplots_adjust(left, bottom, right, top, wspace, hspace)

Py修行路 Matplotlib 绘图及可视化模块的更多相关文章

  1. Py修行路 python基础 (二十)模块 time模块,random模块,hashlib模块,OS及sys模块

    一.前提介绍: 可以开辟作用域的只有类,函数,和模块            for循环 if,else: 不能开辟自己的作用域 避免程序复用和重复调用,将这些写到一个.py文件中,做成一个模块,进行调 ...

  2. python金融与量化分析------Matplotlib(绘图和可视化)

    -----------------------------------------------------------Matplotlib:绘图和可视化------------------------ ...

  3. Py修行路 python基础 (二十三)模块与包

    一.模块 1)定义: 模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 2)为何要用模块: 退出python解释器然后重新进入,那之前定义的函数或者变量都将丢失,因 ...

  4. Py修行路 Pandas 模块基本用法

    pandas 安装方法:pip3 install pandas pandas是一个强大的Python数据分析的工具包,它是基于NumPy构建的模块. pandas的主要功能: 具备对其功能的数据结构D ...

  5. Py修行路 python基础 (二十一)logging日志模块 json序列化 正则表达式(re)

    一.日志模块 两种配置方式:1.config函数 2.logger #1.config函数 不能输出到屏幕 #2.logger对象 (获取别人的信息,需要两个数据流:文件流和屏幕流需要将数据从两个数据 ...

  6. Py修行路 NumPy模块基本用法

    NumPy系统是Python的一种开源的数值计算扩展,一个用python实现的科学计算包.这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结 ...

  7. Matplotlib 绘图与可视化 一些属性和错误

    属性 *)调整图像边缘及图像间的空白间隔plt.subplots.adjust(6个参数) 图像外部边缘的调整可以使用plt.tight_layout()进行自动控制,此方法不能够很好的控制图像间的间 ...

  8. Py修行路 python基础 (十一)迭代器 与 生成器

    一.什么是迭代? 迭代通俗的讲就是一个遍历重复的过程. 维基百科中 迭代(Iteration) 的一个通用概念是:重复某个过程的行为,这个过程中的每次重复称为一次迭代.具体对应到Python编程中就是 ...

  9. Py修行路 python基础 (十三)匿名函数 与 内置函数

    一.匿名函数  1.定义: 匿名函数顾名思义就是指:是指一类无需定义标识符(函数名)的函数或子程序. 2.语法格式:lambda 参数:表达式 lambda语句中,开头先写关键字lambda,冒号前是 ...

随机推荐

  1. 为WebBrowser指定IE内核版本(MSIE 7.0)

    .Web Browser Control – Specifying the IE Version http://www.west-wind.com/weblog/posts/2011/May/21/W ...

  2. EntityFramework 学习 一 Validate Entity

    可以为实体实现自定义验证,重写DBContext中的个ValidateEntity方法 protected override System.Data.Entity.Validation.DbEntit ...

  3. SQl查询基础

    SQL语言是一门简单易学却又功能强大的语言,他让你快速上手并写出比较复杂的查询语句,但对于大多数开发者来书,使用SQL查询数据库并没有一个抽象的过程和一个合理的步骤,这很可能会是在写一些特定的查询语句 ...

  4. Mssql 比较好的写法

    DECLARE @date DATETIME= '2016-11-01'; DECLARE @date2 DATETIME= DATEADD(day, 1, @date); Declare @1 Ta ...

  5. hdoj1006--Tick and Tick

    Problem Description The three hands of the clock are rotating every second and meeting each other ma ...

  6. 02-大鸭梨博客系统数据库设计及Dapper的使用

    毫无疑问,数据库的设计在一个系统中起了至关重要的作用.我们都知道,系统设计分为两部分,或者说是两个阶段,即数据库设计和功能设计.构建一个完善的系统需要这两个阶段的充分考量.周密设计.合理联接以及密切配 ...

  7. MongoDB Wiredtiger存储引擎实现原理——Copy on write的方式管理修改操作,Btree cache

    转自:http://www.mongoing.com/archives/2540 传统数据库引擎的数据组织方式,一般存储引擎都是采用 btree 或者 lsm tree 来实现索引,但是索引的最小单位 ...

  8. ionic2——安装Java jdk并配置环境变量

    前言:jdk是 Java 语言的软件开发工具包,它包含了Java 的运行环境,Java 工具和Java 基础的类库.做java web开发,android开发,还有现在流行的混合式App开发,都需要安 ...

  9. L118

    The company needs to focus on its biggest clients.This article discussed the events that led to her ...

  10. Java中print()、printf()、println()的区别?

    区别: 1.printf主要是继承了C语言的printf的一些特性,可以进行格式化输出 2.print就是一般的标准输出,输入信息后不会换行 3.println输入信息会换行 参照JAVA API的定 ...