To draw a curve line

11 vues (au cours des 30 derniers jours)
Cruise
Cruise le 7 Sep 2011
Hi everybody.I want to draw a curve line and I used code
line([0 0],[0 952],[1238 1446]);
line([0 0],[952 1844],[1446 2000]);
line([0 0],[0 -952],[1238 1446]);
line([0 0],[-952 -1844],[1446 2000]);
But when Matlab run this code,I don't see what i need see. I think i should use "spline" but i can't. What need i do? thank so much/

Réponse acceptée

Kelly Kearney
Kelly Kearney le 7 Sep 2011
Are you looking for a simple interpolation?
Your data...
x = [0 0 0 0 0];
y = [-1844 -952 0 952 1844];
z = [2000 1446 1238 1446 2000];
Interpolate...
n = 50;
x1 = zeros(1,n);
y1 = linspace(min(y),max(y),n);
z1 = interp1(y,z,y1,'spline');
z2 = interp1(y,z,y1,'pchip');
Plot...
plot3(x,y,z,'b',x1,y1,z1,'r',x1,y1,z2,'g');
view(90,0);

Plus de réponses (2)

Fangjun Jiang
Fangjun Jiang le 7 Sep 2011
Would the function rectangle() help?

Grzegorz Knor
Grzegorz Knor le 7 Sep 2011
Maybe just:
view(3)
What exactly do you want to achieve? Smooth line? Or something different?
  1 commentaire
Cruise
Cruise le 8 Sep 2011
Smooth line .thanks.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Interpolation 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!

Translated by