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. nginxif多条件结合判断(实现限速)

    参考文章: https://yq.aliyun.com/articles/44957 需求: 要对某一ip下,使用android客户端的用户进行限速 原理 就是用SET变量进行. AND 就用变量叠加 ...

  2. QT 文本html显示格式的问题,如在QTextBrowser.setText用tr(),其中为html格式

    QObject::tr("<h1><font color = green>%1</font>的人品指数:<font color = orange&g ...

  3. js工厂方法

    工厂方法与简单工厂的区别在于工厂方法没有switch条件分支,实例化哪一个子类放到了客户端(可以利用反射),这样整个工厂和产品体系都没有修改的变化,而只是扩展的变化,这就完全符合了开放-封闭原则的精神 ...

  4. VS Code快捷键

    主命令框 F1 或 Ctrl+Shift+P: 打开命令面板.在打开的输入框内,可以输入任何命令,例如: 按一下 Backspace 会进入到 Ctrl+P 模式 在 Ctrl+P 下输入 >  ...

  5. Android在layout xml中使用include完成静态加载

    Android在layout xml中使用include完成静态加载 include静态加载:不仅可以加载布局,还可以加载控件(控件标签名要在最外层)include标签中有个layout属性就是专门用 ...

  6. sql分页的几种写法

    一直想整理下关于sql分页的几种方法,今天终于有时间整理下了.闲话少说直接上sql,先创建一个测试库,测试表以及测试数据,sql语句如下: CREATE DATABASE DBTEST GO USE ...

  7. svg札记

    1.人老了,有些事情太容易忘记了,这里做下笔记,供参考,for self for you. 2.源于地图监控,建筑级别各大地图商的api(高德.百度.腾讯等)已经足够使用,唯独室内图这块还差点. 3. ...

  8. 字符串数组是可以保存并输出null。只不过不好动态指定长度

    java里如何输出才能让字符串数组不显示出null 2014-05-23 17:46笨妞纤霏 | 浏览 1360 次  编程语言 代码如下package testCourse; public clas ...

  9. UVA - 11014 Make a Crystal (莫比乌斯反演)

    给定一个n*n*n的立方体(中心点为原点O),选择尽量多的点,使得对于任意两点A,B,B不在线段OA上. 可以发现,原问题可转化为三维坐标下的点(x,y,z)中有多少个点的gcd(x,y,z)=1. ...

  10. LeetCode Longest Continuous Increasing Subsequence

    原题链接在这里:https://leetcode.com/problems/longest-continuous-increasing-subsequence/description/ 题目: Giv ...