How can I plot a straight line from a curve?

35 visualizzazioni (ultimi 30 giorni)
I want to draw a straight line across (0,0) point from the given data point.
My code with data point:
x =3:1:18;
y = [.06 .09 .115 .1288 .146 .17 .19 .224 .267 .3058 .336 .378 .491 .495 .518 .509];
plot(x,y,'-o')
grid on
hold on
Figure:
But , I want to draw a straight line.

Risposta accettata

Bjorn Gustavsson
Bjorn Gustavsson il 1 Set 2021
To plot a line between a point [x_i,y_i] and [0,0] simply do this:
ph0p = plot([0,x_i],[0,y_i]);
Then you can decorate the line using the plot-handle ph0p and the set function.
For example from the fifth point in your curve this would become:
i_xy = 5;
ph0p = plot([0,x(i_xy)],[0,y(i_xy)]);
HTH

Più risposte (1)

Matt J
Matt J il 1 Set 2021
Maybe this is what you want?
x =3:1:18;
y = [.06 .09 .115 .1288 .146 .17 .19 .224 .267 .3058 .336 .378 .491 .495 .518 .509];
p=polyfit(x,y,1);
plot(x,y,'o', x,polyval(p,x))
grid on
hold on

Categorie

Scopri di più su Graphics Object Properties in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by