我正在考虑创建一个matlab GUI,其功能如下:
我有一个函数M = F(a,b,c),其输出是矩阵M,M可以在3D空间中绘制。
现在我希望有一个(或多个)nob / bar来调整参数“a”(或a,b,c的三个nob / bar)。因此,情节可以立即绘制它的输出。
因为我的F可能是计算昂贵的功能。
所以我想预先计算与不同参数对应的所有输出。那么我的GUI就不会有任何延迟。
同样由于复杂性,我的nob / bar将非常“离散”,即一个参数只有10个不同的值。
但现在我完全不知道如何在MATLAB中做到这一点, 任何人都可以给我一些方向来搜索我需要的matlab函数吗? (我的困惑在于GUI,我如何做nob / bar的事情?或者即时更新的东西?)
或实施我想要的更好方式?
答案 0 :(得分:0)
我不确定哪个部分你不知道怎么做(GUI部分或生成数据),但我会假设您正在尝试找到一种方法来很好地存储结果矩阵,以便您可以使用GUI显示它们
在这里,我将如何处理这个问题: 您需要许多2D Matrix实例。假设你改变了3个参数:a,b,c。
a = 1, 2, 3, 4
b = 1, 2,
c= 0.3, 0.5, 0.5
然后您需要离线填充的2 * 2 * 3 2D矩阵图像。 然后你做:
Result := array(1...4, 1..2, 1..3, 1..40, 1..40)
这假设您的矩阵为40x40。然后你必须创建嵌套的for循环(在这种情况下为3个嵌套)并填充矩阵。
移动GUI栏时,您将更改Result数组的前3个索引并在最后2个中显示数据。