matplotlib subplots_adjust()在wxpython面板中不起作用

时间:2018-08-02 03:56:04

标签: python matplotlib wxpython

我想用wxpython更改面板中的子图(左下右上wspace hspace),但是没有用。但是我只想使用matplotlib,它就很好。(我想用wxpython更改面板中的子图(左下右上wspace hspace),但是没有用。但是只能使用matplotlib,它很好。)

from numpy import arange, sin, pi
import matplotlib
import matplotlib.pyplot as plt
matplotlib.use('WXAgg')

from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg as FigureCanvas
from matplotlib.backends.backend_wx import NavigationToolbar2Wx
from matplotlib.figure import Figure

import wx

class CanvasPanel(wx.Panel):
    def __init__(self, parent):
        wx.Panel.__init__(self, parent)
        self.figure = Figure()
        # self.axes = self.figure.add_subplot(111)
        self.DrawUi()
        self.canvas = FigureCanvas(self, -1, self.figure)
        self.sizer = wx.BoxSizer(wx.VERTICAL)
        self.sizer.Add(self.canvas, 1, wx.LEFT | wx.TOP | wx.GROW)
        self.SetSizer(self.sizer)
        self.Fit()


    def DrawUi(self):
        ax = []
        for i in range( 24):
            print('i, %d' % i)
            ax.append(i)
            ax[i] = self.figure.add_subplot(8, 3, i+1)
            ax[i].plot( [1,2,3,4])
            plt.xlim((0, 512))
            plt.ylim((0, 256))
        plt.subplots_adjust(left=0, bottom=0, right=1, top=1, hspace=0, wspace=0)

if __name__ == "__main__":
    app = wx.PySimpleApp()
    fr = wx.Frame(None, title='test')
    panel = CanvasPanel(fr)
    # panel.draw()
    fr.Show()
    app.MainLoop()

0 个答案:

没有答案