图形自动缩放

2024-10-08 18:28:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我画了一张图,下面是我的代码:

def graphdraw(self):
        self.xaxis = []
        self.yaxis = []
        fig=plt.figure(1)
        self.ax=fig.add_subplot(111)
        plt.xlabel('Wavelenght[nm]')
        plt.ylabel('Intensity[arb. unit]')
        self.line, = self.ax.plot(self.xaxis,self.yaxis,'g-', linewidth=1.5, markersize=4)
        self.ax.set_xlim(-250,250)
        self.ax.set_ylim(0,40000)
    def drawg(self):
        self.graphdraw()
        i = -200
        while i <= 200:
            self.xaxis.append(i)
            self.yaxis.append(i*i)
            self.line.set_data(self.xaxis,self.yaxis)
            plt.draw()
            plt.pause(0.1)
            i = i + 1

但我想让它自动缩放轴,当我这样做:self.ax.autoscale_view(True,True,True)而不是这些行:self.ax.set_lim...它不工作。我知道这可能是一个愚蠢而琐碎的问题,但有人能帮我吗?你知道吗


Tags: 代码selfaddtruedeflinefigplt
1条回答
网友
1楼 · 发布于 2024-10-08 18:28:06

好吧,没关系。我自己做了自动缩放。你知道吗

def graphdraw(self):
        self.xaxis = []
        self.yaxis = []
        fig=plt.figure(1)
        self.ax=fig.add_subplot(111)
        plt.xlabel('Wavelenght[nm]')
        plt.ylabel('Intensity[arb. unit]')
        self.line, = self.ax.plot(self.xaxis,self.yaxis,'g-', linewidth=1.5, markersize=4)
        self.ax.set_xlim(-250,250)
    def drawg(self):
        self.graphdraw()
        i = -200
        start = 50
        while i <= 200:
            z = random.randint(0,450)
            self.ax.set_ylim(0,start)
            self.xaxis.append(i)
            self.yaxis.append(z)
            if z > start:
                start= z
            self.ax.set_ylim(0,start + 50)
            self.line.set_data(self.xaxis,self.yaxis)
            plt.draw()
            plt.pause(0.1)
            i = i + 1 

相关问题 更多 >

    热门问题