wxPython繪圖模組wxPyPlot實現資料視覺化
阿新 • • 發佈:2020-01-09
本文例項為大家分享了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()
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。