output of interp2 is single - why?
Afficher commentaires plus anciens
when I use the following code, the output zcovis is a single rather than a double.
if true
surf(xb,yb,zb)
[xcovis,ycovis]=ginput(1);
zcovis = interp2(xb,yb,zb,xcovis,ycovis);
end
xb,yb,zb are imported data but xb,yb should be consistent with meshgrid format (zb is height above surface not a third coordinate)
why is zcovis a single? I'd like to use it to place a text comment on a another figure:
if true
text(0.1,zcovis+4.2,'COVIS')
end
2 commentaires
KSSV
le 9 Août 2018
Check the classes of xb,yb and zb..they could be single.
Walter Roberson
le 9 Août 2018
What are class(xb), class(yb), class(zb) ?
Réponses (1)
ANKUR KUMAR
le 9 Août 2018
It's because of your xb,yb,zb, xcovis and ycovis are single. If you want your output in double, just use double before using interp2.
zcovis = double( interp2(xb,yb,zb,xcovis,ycovis));
3 commentaires
Karen Bemis
le 10 Août 2018
Walter Roberson
le 10 Août 2018
zcovis = interp2(xb, yb, double(zb), xcovis, ycovis);
ANKUR KUMAR
le 10 Août 2018
Modifié(e) : Stephen23
le 10 Août 2018
Make all inputs having the same class. This works well, as suggested by Walter Roberson.
Catégories
En savoir plus sur Logical dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!