jupyter中利用matplotlib绘制动态图_jupyter plot动态绘图_Hubans的博客-程序员宅基地

技术标签: python  可视化  数据分析  

jupyter中利用matplotlib绘制动态图


原理:每次更新数据时,清除上一次的图片,并生成新的图片,以此达到(伪)动态图的效果。至于如何保存为真动态图,我是用录屏+生成GIF的方式获取动态图的,一般的视频播放软件都带这两个功能,比较麻烦(曲线救国),GIF不一定特别清晰,毕竟是视频转为GIF。

from IPython import display
import numpy as np
import matplotlib
import matplotlib.pyplot as plt
%matplotlib inline

x = list(np.linspace(0,6,50))
y = np.sin(x)
for i in range(len(x)):
    plt.cla()  # 清除图片 
    plt.xlim((0, 6))
    plt.ylim((-1.1, 1.1))
    xx = x[:i]
    yy = y[:i]
    plt.plot(xx, yy, color='black')  # 绘制曲线
    plt.scatter(x[i-1], y[i-1], color='red', s=20)  # 绘制最新点
    plt.title('sin(x)')
    display.clear_output(wait=True)
    plt.pause(0.00000001) 
plt.show()

在这里插入图片描述
这个方法有有点好处就是,可以在图形中添加很多其他的图,比如我需要在折线图中添加散点图,或者多条折线图同时变化。
类似的有个很棒的画动态图的方法,是使用plotly.express来画图,缺点是不能把多种图形画在一起,比如我有一条折线图,我想要在折线图上标记多个点,plotly.express就做不到(可能是我不会,反正研究了大半天,有知道的大佬可以告诉我下),后面要是有时间的话,可能会做个plotly.express的初步教程。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Hubans/article/details/115356898

智能推荐

Ubuntu 关闭开机图形界面_ubuntu关闭开机动画-程序员宅基地

Ubuntu12.04 关闭开机图形界面编辑 删除Linux系统桌面版,开始过程中相当大部分的时间是消耗在图形界面的启动上,然而,对于大部分开发人员来说,开启图形界面是完全没必要的,浪费时间的同时,也会多占用很多内存空间。如果电脑配置低或者虚拟机中安装Linux的话,完全可以把图形界面关掉。对于 ubuntu12.04桌面系统,如果想在开机的时候直接进..._ubuntu关闭开机动画

DockerSwarm部署服务一直处于preparing_preparing docker ssh environment-程序员宅基地

解决:需要部署的linux通通卸载镜像重新pull_preparing docker ssh environment

Android平台Camera实时滤镜实现方法探讨(十)--代码地址以及简介(20160118更新)-程序员宅基地

简单做了个相机和图片编辑模块,时间原因很多功能还没有做,尚有BUG,见谅,将在以后抽时间修改 代码地址 PS:请点个Star^-^ ---------------------------------------------------------------------------..._android软件的滤镜是怎么用代码制作的

Webstorm常用快捷键-程序员宅基地

常用快捷键—Webstorm入门指南提高代码编写效率,离不开快捷键的使用,Webstorm拥有丰富的代码快速编辑功能,你可以自由配置功能快捷键。快捷键配置点击“File”-> “settings”Webstorm预置了其他编辑器的快捷键配置,可以点击默认配置-Eclipse的常用快捷键对照表查找/代替Webstorm快捷键Eclipse快捷键

Python如何控制小数点后面的小数位数_python 两个数相减后小数点后很多位-程序员宅基地

有两种简单方式1.用round()函数例:x=1.23456,在输出时只想保留小数点后3位:x=1.23456print(round(x,3))2.x=1.23456print('%.2f'%x)_python 两个数相减后小数点后很多位

SpringMVC学习笔记(一)——SpringMVC基本概述_springmvc笔记概述简述-程序员宅基地

SpringMVC概述(一)SpringMVC的概念SpringMVC是一种使用[模型-视图-控制器]来设计并创建Web应用程序的开发模式模型(Model):表示应用程序核心,比如在数据库中的数据记录列表视图(View):表示显示数据(数据库记录),比如Java Server Pages(Java服务器页面)控制器(Controller):处理输入(写入数据库的记录),接收请求数据并转发..._springmvc笔记概述简述

随便推点

LeetCode-Nth Digit_leetcode 自然数组成 找出第m位置上的数字-程序员宅基地

LeetCode Java Nth Digit_leetcode 自然数组成 找出第m位置上的数字

stm32 i2c cube_思远SY8801TWS充电仓方案获小米采用,集成I2C通讯和内部通讯隔离功能...-程序员宅基地

自苹果AirPods发布以来,TWS真无线耳机市场被迅速点燃,经过了近四年时间的发展,整个产业链从外观设计到电池、充电、芯片方案等都有了非常大的提升。市面上每一款优秀的TWS真无线蓝牙耳机都需要使用充电盒对其进行充电,而充电盒中电源管理芯片要确保提供高效和高可靠性的充电电源尤为重要,对小电流输出效率和静态低功耗的控制要求较高。近日,我爱音频网拆解了小米真无线蓝牙耳机Air2 SE,发现其..._stm32做蓝牙耳机充电仓

iPhone iPad发展史-程序员宅基地

1.iPhone 发展史iPhone一代(iPhone2G)2007年发布支持电子邮件、移动通话、短信、网络浏览等采取触摸键盘3.5英寸,480x320像素后置摄像头200万像素iPhone二代(iPhone3G)2008年发布增加了3G的功能3.5英寸,480x320像素分辨率后置摄像头200万像素iPhone三代(iP...

JAVA__窗口示例代码之布局的练习-程序员宅基地

/*时间: 2012-10-17作者: 烟大程序要求: 将用awt组件编写的窗口程序用Swing组件来编写程序介绍: 本程序主要熟悉SWING组件;通过该程序了解SWING的使用方法、规则;*/import javax.swing.*;import java.awt.*;class Day1017_Frame{ public stati

关于使用pywinauto开发自动化安装软件脚本的一些坑_pywinauto.findwindows.elementnotfounderror: {'best-程序员宅基地

本人第一次使用pywinauto的时候也是和大家一样,网上各种搜,最后搜到的也都是千篇一律。下面介绍一些楼主在开发过程中遇到的一些坑。用到的包(pywinauto,scrpy)一:start打开软件后识别不到窗口控件,报错notfoundelement关于这个问题,楼主也是卡了半天时间,最后抱着试一试的态度,在start后,设置一个time.sleep,然后再重新进行connect的时候,居然..._pywinauto.findwindows.elementnotfounderror: {'best_match': 'txguifoundation