我有一些沉重的情节,它可以计算几秒钟,但是当我调整窗口/图表的大小时 - 它挂了一段时间,这对我来说不是明显的行为。我怎么解决这个问题?情节数据没有变化,只是调整大小 演示:
import numpy as np
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
import matplotlib
matplotlib.use('GTKCairo')
from matplotlib.figure import Figure
from matplotlib.backends.backend_gtk3cairo import FigureCanvasGTK3Cairo as FigureCanvas
class MyApp:
def __init__(self):
self.Window = Gtk.Window()
graphFig = Figure()
graphCanvas = FigureCanvas(graphFig)
self.Window.add(graphCanvas)
# just example of heavy chart
subplot = graphFig.add_subplot(111)
for n in range(100):
x = np.arange(0, 100, 0.01)
y = np.sin(x) * n
subplot.plot(x, y)
return
def Run(self):
self.Window.show_all()
Gtk.main()
return
App = MyApp()
App.Run()
修复此问题有哪些选择?我只想在更新图表或用户平移/缩放图片时重绘图表。
答案 0 :(得分:0)
要加快绘图速度,请考虑绘制较低分辨率的线条。每行1000个样本的100行是很多绘图。
除此之外,complete walkthrough the changes有一个非常详细的答案可以帮助你提高速度。