Increasing number of points in a plot without ruining the shape
16 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
How can I make this plot look like

this plot but instead of reducing points I want to increase data points in red plot to 20. Using linspace or interp1 is giving me a straight line. I want to conserve the shape of the plot and increase the number of points in the plot.

0 Commenti
Risposta accettata
darova
il 20 Ago 2019
Is it correct? (Not tested)
x1red = linspace(xred(1),xblue(end),20); % more points for red curve
% scaling red curve (make it as long as blue one)
Lred = xred(end) - xred(1);
Lblue= xblue(end) = xblue(1);
xred_scaled = xred(1) + (xred-xred(1))*Lblue/Lred;
y1red = interp1(x_red_scaled,yred,x1red);
plot(xblue,yblue,'b')
hold on
plot(x1red,y1red,'r')
hold off
0 Commenti
Più risposte (1)
Stephen23
il 20 Ago 2019
Modificato: Stephen23
il 20 Ago 2019
Try using method spline or pchip and see if they do what you want:
interp1(...,'pchip')
1 Commento
Stephen23
il 20 Ago 2019
Writing "it's not working" tells us nothing. If you want further help then please:
- tell us if you are extrapolating the data.
- show the exact code that you are using.
- upload sample data in a .mat file.
- show or explain how the expected output is different to what you get.
Vedere anche
Categorie
Scopri di più su Graphics Performance 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!