wxPython绘图模块wxPyPlot实现数据可视化


Posted in Python onNovember 19, 2019

本文实例为大家分享了wxPython绘图模块wxPyPlot实现数据可视化的具体代码,供大家参考,具体内容如下

#-*- coding: utf-8 -*- 
 
################################################################################
## 使用wxPython的绘图模块wxPyPlot,需要数据可视化的时候,无需再借用其他的库或模块了
################################################################################
import numpy
import wx
import wx.lib.plot as wxPyPlot #导入绘图模块,并命名为wxPyPlot
 
#---------------------------------------------------------------------------
# 需要把数据封装进入MyDataObject中
def MyDataObject():
 # 50 个点的sin函数,用蓝色圆点表示
 data1 = 2.*numpy.pi*numpy.arange(100)/100.
 data1.shape = (50, 2)
 data1[:,1] = numpy.sin(data1[:,0])
 markers = wxPyPlot.PolyMarker(data1, legend='Green Markers', colour='blue', marker='circle',size=1)
 
 # 50个点的cos函数,用红色表示
 data2 = 2.*numpy.pi*numpy.arange(100)/100.
 data2.shape = (50,2)
 data2[:,1] = numpy.cos(data2[:,0])
 lines = wxPyPlot.PolySpline(data2, legend= 'Red Line', colour='red')
 
 GraphTitle="Plot Data(Sin and Cos)"
 
 
 return wxPyPlot.PlotGraphics([markers, lines],GraphTitle, "X Axis", "Y Axis")
#-----------------------------------------------------------------------------
class TestFrame1(wx.Frame):
 def __init__(self, parent=None, id=wx.ID_ANY, title="Using wxPyPlot"):
  wx.Frame.__init__(self, parent, id, title,size=(600, 400))
  
  # 创建菜单栏
  self.mainmenu = wx.MenuBar()
 
  menu = wx.Menu()
  menu.Append(100, 'Draw1', 'Draw plots1')
  self.Bind(wx.EVT_MENU,self.OnPlotDraw1, id=100)
 
  self.mainmenu.Append(menu, '&Plot')
 
  self.SetMenuBar(self.mainmenu)
 
  # 创建状态栏,显示信息
  self.CreateStatusBar(2)
  
  self.pc = wxPyPlot.PlotCanvas(self) #此处导入绘图面板
 
 def OnPlotDraw1(self, event): #绘图函数
  self.pc.Draw(MyDataObject())
 
 
###########################################################################
## 测试wxPyPlot的代码
###########################################################################
if __name__=='__main__':
  app = wx.App()
  tf=TestFrame1(None)
  tf.Show()
  app.MainLoop()

wxPython绘图模块wxPyPlot实现数据可视化

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python开启多个子进程并行运行的方法
Apr 18 Python
Python爬取网易云音乐上评论火爆的歌曲
Jan 19 Python
Python轻量级ORM框架Peewee访问sqlite数据库的方法详解
Jul 20 Python
Python3实现的字典、列表和json对象互转功能示例
May 22 Python
Python3 venv搭建轻量级虚拟环境的步骤(图文)
Aug 09 Python
python聚类算法解决方案(rest接口/mpp数据库/json数据/下载图片及数据)
Aug 28 Python
django-rest-swagger的优化使用方法
Aug 29 Python
Tensorflow实现部分参数梯度更新操作
Jan 23 Python
Python分类测试代码实例汇总
Jul 23 Python
Python内置函数property()如何使用
Sep 01 Python
Django实现文章详情页面跳转代码实例
Sep 16 Python
python drf各类组件的用法和作用
Jan 12 Python
Python浮点数四舍五入问题的分析与解决方法
Nov 19 #Python
python 上下文管理器及自定义原理解析
Nov 19 #Python
浅析python中while循环和for循环
Nov 19 #Python
django实现web接口 python3模拟Post请求方式
Nov 19 #Python
wxPython+Matplotlib绘制折线图表
Nov 19 #Python
python元组的概念知识点
Nov 19 #Python
python数值基础知识浅析
Nov 19 #Python
You might like
php模拟socket一次连接,多次发送数据的实现代码
2011/07/26 PHP
调整PHP的性能
2013/10/30 PHP
php实现CSV文件导入和导出
2015/10/24 PHP
游戏人文件夹程序 ver 4.03
2006/07/14 Javascript
jquery.validate使用攻略 第三部
2010/07/01 Javascript
浅谈Javascript 数组与字典
2015/01/29 Javascript
Javascript实现快速排序(Quicksort)的算法详解
2015/09/06 Javascript
深入JavaScript高级程序设计之对象、数组(栈方法,队列方法,重排序方法,迭代方法)
2015/12/01 Javascript
JS冒泡事件与事件捕获实例详解
2016/11/25 Javascript
微信小程序 开发之快递查询功能的实现
2017/01/09 Javascript
jQuery Validate 校验多个相同name的方法
2017/05/18 jQuery
vuejs手把手教你写一个完整的购物车实例代码
2017/07/06 Javascript
深入探究node之Transform
2017/07/20 Javascript
vue-cli脚手架-bulid下的配置文件
2018/03/27 Javascript
详解vue的diff算法原理
2018/05/20 Javascript
JavaScript面向对象的程序设计(犯迷糊的小羊)
2018/05/27 Javascript
解决vue中监听input只能输入数字及英文或者其他情况的问题
2018/08/30 Javascript
H5+C3+JS实现双人对战五子棋游戏(UI篇)
2020/05/28 Javascript
如何为vue的项目添加单元测试
2018/12/19 Javascript
js变量值传到php过程详解 将php解析成数据
2019/06/26 Javascript
Vue之Mixins(混入)的使用方法
2019/09/24 Javascript
html5以及jQuery实现本地图片上传前的预览代码实例讲解
2021/03/01 jQuery
在Django的视图中使用form对象的方法
2015/07/18 Python
python中日志logging模块的性能及多进程详解
2017/07/18 Python
Python线程创建和终止实例代码
2018/01/20 Python
python numpy 常用随机数的产生方法的实现
2019/08/21 Python
python装饰器相当于函数的调用方式
2019/12/27 Python
解决Tensorboard可视化错误:不显示数据 No scalar data was found
2020/02/15 Python
TensorFlow keras卷积神经网络 添加L2正则化方式
2020/05/22 Python
香港演唱会订票网站:StubHub香港
2019/10/10 全球购物
香港零食网购:上仓胃子
2020/06/08 全球购物
使用C#编写创建一个线程的代码
2013/01/22 面试题
银行求职信怎么写
2014/05/26 职场文书
设计专业毕业生求职信
2014/06/25 职场文书
办理信用卡工作证明
2014/09/30 职场文书
2016年中学植树节活动总结
2016/03/16 职场文书