Página Inicial > Python, WxPython > Gráficos com MatPlotLib e WxPython

Gráficos com MatPlotLib e WxPython

Já vimos uma exemplo da plotagem de um gráfico usando a biblioteca matplotplib, mas podemos usar outro toolkit gráfico(Wxpython, GTK, QT…), para desenhar as janelas dos gráficos. Já que eu gosto do wxpython, eis um exemplo de como usar a matplotlib juntamente com wxpython:

#!/usr/bin/env python

import matplotlibmatplotlib.use('WX')from matplotlib.backends.backend_wx import Toolbar
import FigureCanvasWx, FigureManagerfrom matplotlib.figure import Figure
import  numpy
import wx

class PlotFigure(wx.Frame):

    def __init__(self):

        wx.Frame.__init__(self, None, -1, "Teste de Grafico 2D com WxPython e Matplotlib")

        self.fig = Figure((9,8), 75)
        self.canvas = FigureCanvasWx(self, -1, self.fig)
        self.toolbar = Toolbar(self.canvas)
        self.toolbar.Realize()

        tw, th = self.toolbar.GetSizeTuple()
        fw, fh = self.canvas.GetSizeTuple()

        self.toolbar.SetSize(wx.Size(fw, th))

        self.figmgr = FigureManager(self.canvas, 1, self)

        sizer = wx.BoxSizer(wx.VERTICAL)
        sizer.Add(self.canvas, 1, wx.ALIGN_LEFT|wx.ALIGN_TOP|wx.GROW)
        sizer.Add(self.toolbar, 0, wx.GROW)
        self.SetSizer(sizer)
        self.Fit()

    def plot_data(self):

        a = self.fig.add_subplot(111)
        t = numpy.arange(0.0,3.0,0.01)
        s = numpy.sin(2*numpy.pi*t)
        c = numpy.cos(2*numpy.pi*t)
        a.plot(t,s)
        a.plot(t,c)

        self.toolbar.update()

    def GetToolBar(self):

        return self.toolbar

if __name__ == '__main__':

    app = wx.PySimpleApp()
    frame = PlotFigure()
    frame.plot_data()
    frame.Show()
    app.MainLoop()

Agora a imagem do exemplo funcionando:

wx-graphic

Python, WxPython

  1. Nenhum comentário ainda.
  1. Nenhum trackback ainda.