最后,我找到了一种方法,将图表嵌入到PyQt窗口中(按照给出的in this post的说明)。下面建议的代码生成一个PyQt窗口,其中显示3D条形图。可以使用滑块(时间变化)为图表设置动画。在import sys
from PyQt4 import QtGui, QtCore
from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg as FigureCanvas
from matplotlib.backends.backend_qt4agg import NavigationToolbar2QTAgg as NavigationToolbar
from mpl_toolkits.mplot3d import Axes3D
from math import cos, sin
import matplotlib.pyplot as plt
import numpy as np
# An arbitraty function for z = f(x,t)
def z_xt(x, t):
return 30*sin(5*t) + x**2 + 20
# An arbitraty function for z = f(y,t)
def z_yt(y, t):
return 20*cos(2*t) + y**3/10 + 20
# Superposition z(x,y,t) = z(x,t) + z(y,t)
def z_xyt(f_xt, f_yt):
return f_xt+f_yt
# Definition of space and time domains
nx = 9; dx =