How to plot over a range using absolute value
5 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Elizabeth Lu
le 12 Nov 2019
Commenté : Elizabeth Lu
le 12 Nov 2019
I'm trying to plot a surface over a square given by the function abs(x) + abs (y) ≤ 2. I'm trying to use meshgrid, but I'm lost on what I should use as my intervals. If someone could lead me in the right direction, that would be awesome.
0 commentaires
Réponse acceptée
the cyclist
le 12 Nov 2019
Modifié(e) : the cyclist
le 12 Nov 2019
One way to do it would be to create a grid that is larger than the one you need, but then overwrite the x-y grid values that do not obey the restriction into NaN. For example:
x = linspace(-2,2,100);
y = linspace(-2,2,100);
[xx,yy] = meshgrid(x,y);
idxToRemove = (abs(xx) + abs (yy) > 2);
xx(idxToRemove) = NaN;
yy(idxToRemove) = NaN;
zz = xx - yy.^2;
figure
mesh(xx,yy,zz)
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Surface and Mesh Plots dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!