Z必须是一个矩阵,而不是scalaqr或矢量,matlab

时间:2017-10-25 16:46:32

标签: matlab surf

我正在尝试制作一个3D图,但我收到一个错误,我不知道如何解决它。我知道还有其他类似于我的问题,但是我尝试了其中的一些问题并且没有用。

embers[i].y -= embers[i].vy;

1 个答案:

答案 0 :(得分:0)

此案例中的Z数据是您surf传递给fh的数据fh。看起来Z是您要用来计算X的函数,但您需要使用为Yx生成的网格值来评估它。正如您的代码现在一样,它正在使用y[X, Y] = meshgrid(1:0.5:10, 1:20); Z = sin(X).*cos(Y).^3 + 2.*cos(X).^5.*sin(Y); surf(X, Y, Z); 评估函数(案例重要!),您尚未为我们定义。试试这个:

.*

请注意,我在等式中使用了*运算符(element-wise multiplication)而不是fh = @(x, y) sin(x).*cos(y).^3 + 2.*cos(x).^5.*sin(y); [X, Y] = meshgrid(1:0.5:10, 1:20); surf(X, Y, fh(X, Y)); 运算符(matrix multiplication)。

您也可以通过定义anonymous function来评估给定数据集的公式:

SELECT a.BoughtTickets, b.event_capacity, b.event_id
FROM
(SELECT 
COUNT(*)  AS BoughtTickets 
FROM ticket
GROUP BY event_id

) a
JOIN
(SELECT 
event_capacity,
event_id
FROM requested_event JOIN approved_event
ON requested_event.reservation_id = approved_event.reservation_id
) b