iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python多线程怎么实现动态图绘制
  • 628
分享到

python多线程怎么实现动态图绘制

2023-06-30 03:06:14 628人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

今天小编给大家分享一下python多线程怎么实现动态图绘制的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、背景有些情况下,

今天小编给大家分享一下python多线程怎么实现动态图绘制的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

    一、背景

    有些情况下,我们面对实时更新的数据,希望能够在一个窗口中可视化出来,并且能够实时更新,方便我们观察数据的变化,从而进行数据分析,例如:绘制音频的波形,绘制动态曲线等,下面介绍使用matplotlib结合多线程绘制动态图,希望能帮助到有需要的朋友。

    遇到的场景:最近刚好在学习人工智能中的遗传算法,并且使用该算法求解TSP,了解这个算法的朋友知道这个算法是通过不断迭代,寻找适应度大的最优解,为了了解迭代过程中适应度的变化,我希望能够实时更新迭代过程中的适应度,将其可视化出来(数据量不断增大)

    二、步骤

    1、使用matplotlib绘制动态图

    • 工具:matplotlib.animation

    2、创建一个线程用于更新数据

    • threading

    三、代码框架

    # Author: 浅若清风cyf# Date: 2020/12/11import threadingimport matplotlib.pyplot as pltimport matplotlib.animation as animationimport matplotlib.lines as lineimport numpy as npCHUNK = 2048  # 初始数据量data=np.random.nORMal(0,1,CHUNK)  # 存放数据,用于绘制图像,数据类型可为列表# 定义画布fig = plt.figure()ax = plt.subplot(111,ylim=(0,5))line = line.Line2D([], [])  # 绘制直线# 初始化图像def plot_init():    ax.add_line(line)    return line, # 必须加逗号,否则会报错(TypeError: 'Line2D' object is not iterable)# 更新图像(animation会不断调用此函数刷新图像,实现动态图的效果)def plot_update(i):    global data  # data为全局变量    data_copy = data.copy()  # 为避免线程不同步导致获取到的data在绘制图像时被更新,这里复制数据的副本,否则绘制图像的时候可能会出现x和y的数据维度不相等的情况    x_data=np.arange(0,data_copy.shape[0],1)  # x轴根据y轴数据自动生成(可根据需要修改)    ax.set_xlim(0,data_copy.shape[0])  # 横坐标范围(横坐标的范围和刻度可根据数据长度更新)    ax.set_title("title",fontsize=8)  # 设置title    line.set_xdata(x_data)  # 更新直线的数据    line.set_ydata(data_copy)  # 更新直线的数据# 大标题(若有多个子图,可为其设置大标题)    plt.suptitle('Suptitle',fontsize=8)    # 重新渲染子图    ax.figure.canvas.draw()  # 必须加入这一行代码,才能更新title和坐标!!!    return line,  # 必须加逗号,否则会报错(TypeError: 'Line2D' object is not iterable)# 绘制动态图ani = animation.FuncAnimation(fig,   # 画布  plot_update,  # 图像更新                              init_func=plot_init,  # 图像初始化                              frames=1,                              interval=30,  # 图像更新间隔                              blit=True)# 数据更新函数def dataUpdate_thead():    global data    # 为了方便理解代码,这里生成正态分布的随机数据    while True:  # 为了方便测试,让数据不停的更新    data=np.random.normal(0,1,CHUNK)# 为数据更新函数单独创建一个线程,与图像绘制的线程并发执行ad_rdy_ev = threading.Event()ad_rdy_ev.set()  # 设置线程运行t = threading.Thread(target=dataUpdate_thead, args=()) # 更新数据,参数说明:target是线程需要执行的函数,args是传递给函数的参数)t.daemon = Truet.start()  # 线程执行plt.show() # 显示图像(0,1,CHUNK)# 为数据更新函数单独创建一个线程,与图像绘制的线程并发执行ad_rdy_ev = threading.Event()ad_rdy_ev.set()  # 设置线程运行t = threading.Thread(target=dataUpdate_thead, args=()) # 更新数据,参数说明:target是线程需要执行的函数,args是传递给函数的参数)t.daemon = Truet.start()  # 线程执行plt.show() # 显示图像

    以上就是“Python多线程怎么实现动态图绘制”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网Python频道。

    --结束END--

    本文标题: python多线程怎么实现动态图绘制

    本文链接: https://www.lsjlt.com/news/327243.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    本篇文章演示代码以及资料文档资料下载

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档
    猜你喜欢
    • python多线程怎么实现动态图绘制
      今天小编给大家分享一下python多线程怎么实现动态图绘制的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、背景有些情况下,...
      99+
      2023-06-30
    • python多线程实现动态图绘制
      目录一、背景二、步骤1、使用matplotlib绘制动态图2、创建一个线程用于更新数据三、代码框架一、背景 有些情况下,我们面对实时更新的数据,希望能够在一个窗口中可视化出来,并且能...
      99+
      2024-04-02
    • Vue+Echarts实现绘制动态折线图
      目录1 引入Echarts1.1 安装1.2 引入1.3 基本使用2 动态折线图2.1 基本折线图2.2 动态折线图补充1 引入Echarts 1.1 安装 使用如下命令通过 npm...
      99+
      2023-03-19
      Vue Echarts绘制动态折线图 Vue Echarts绘制折线图 Vue Echarts 折线图 Vue Echarts
    • Android怎么实现动态曲线绘制
      这篇文章主要介绍了Android怎么实现动态曲线绘制的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Android怎么实现动态曲线绘制文章都会有所收获,下面我们一起来看看吧。我们在安卓开发中,有时会用到统计图表的...
      99+
      2023-07-02
    • WPF+ASP.NETSignalR实现动态折线图的绘制
      目录什么是SignalRSignalR做了什么封装与集成SignalR用途官方网址和源码示例截图服务端项目创建SignalR服务端业务集成SignalR服务端配置客户端项目创建客户端...
      99+
      2023-01-03
      WPF 动态折线图 WPF 折线图 WPF SignalR 折线图
    • 怎么使用Vue+Echarts实现绘制动态折线图
      今天小编给大家分享一下怎么使用Vue+Echarts实现绘制动态折线图的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1 引入...
      99+
      2023-07-05
    • Python实现动态柱状图的绘制
      目录一.基础柱状图二.基础时间线柱状图三.GDP动态柱状图绘制四.完整代码一.基础柱状图 如图 演示 from pyecharts.charts import Bar from p...
      99+
      2022-12-29
      Python绘制动态柱状图 Python动态柱状图 Python 柱状图
    • Android实现动态曲线绘制
      我们在安卓开发中,有时会用到统计图表的功能,而曲线绘制是其中比较典型的一种,一般是利用给定的坐标点集和安卓自带的绘图模块进行绘制,直接得到的是一张完整的静态的曲线图。但有时,我们需要...
      99+
      2024-04-02
    • Matlab怎么实现动态表白图的绘制
      这篇文章主要介绍了Matlab怎么实现动态表白图的绘制的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Matlab怎么实现动态表白图的绘制文章都会有所收获,下面我们一起来看看吧。提前祝女朋友节日快乐1 展现这里没...
      99+
      2023-06-30
    • Python+matplotlib怎么实现绘制等高线图
      本篇内容主要讲解“Python+matplotlib怎么实现绘制等高线图”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python+matplotlib怎么实现绘制等高线图”吧!1. 等高线图概...
      99+
      2023-06-21
    • python怎么实现多次绘制条形图
      这篇“python怎么实现多次绘制条形图”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“python怎么实现多次绘制条形图”文...
      99+
      2023-06-30
    • 怎么使用Python+pyecharts绘制双动态曲线
      这篇“怎么使用Python+pyecharts绘制双动态曲线”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么使用Pytho...
      99+
      2023-07-02
    • Python matplotlib实现折线图的绘制
      目录一、版本二、图表主题设置三、一次函数四、多个一次函数五、填充折线图官网: https://matplotlib.org 一、版本 # 01 matplotlib安装情况 imp...
      99+
      2024-04-02
    • python怎么绘制折线图
      在Python中,可以使用Matplotlib库来绘制折线图。下面是一个简单的示例:```pythonimport matplotl...
      99+
      2023-08-19
      python
    • C#实现chart控件动态曲线绘制
      本文实例为大家分享了C#实现chart控件动态曲线绘制的具体代码,供大家参考,具体内容如下 思想 实验室要做一个动态曲线绘制,网上方法很多,但是缺乏完整代码和效果图的整合,往往总是缺...
      99+
      2024-04-02
    • 怎么用Python 绘制北上广深的地铁路线动态图
      今天就跟大家聊聊有关怎么用Python 绘制北上广深的地铁路线动态图,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。今天教大家用python制作北上广深——地铁线路动态图。坐...
      99+
      2023-06-22
    • Python实现动态条形图绘制的示例代码
      目录动态条形图变动态柱状图指定排序方式限制条目数设置固定条目固定数值轴,使其不发生动态变化设置图像帧数,默认 10 帧设置帧率,单位时间默认为 500ms设置每帧增加的标签时间,默认...
      99+
      2024-04-02
    • 怎么用Python绘制动态可视化图表
      这篇“怎么用Python绘制动态可视化图表”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么用Python绘制动态可视化图表...
      99+
      2023-06-29
    • Python+pyecharts绘制双动态曲线教程详解
      总体跟官方样例相似,但是官方样例因为部分代码有误无法运行,同时需要了解json,以及前后端知识需要一些时间,因此供大家参考。 这个是views def line_base() -&g...
      99+
      2024-04-02
    • Python绘制北上广深的地铁路线动态图
      目录坐标点的采集坐标系的转换地理可视化其他效果展示上海-变色广州-卫星图深圳-个性化配色小结今天教大家用python制作北上广深——地铁线路动态图,这可能是全网最全最详细的教程了。 ...
      99+
      2024-04-02
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作