Azzera filtri
Azzera filtri

How to make a plot smooth?

4 visualizzazioni (ultimi 30 giorni)
Sajid Sarwar
Sajid Sarwar il 29 Giu 2019
Commentato: Star Strider il 29 Giu 2019
I have attached the fig. file of the plot and I want to make the lines smooth without running code again as it takes too much time.

Risposta accettata

Star Strider
Star Strider il 29 Giu 2019
It depends on what you intend by ’smooth’.
Try this:
I = openfig('scma25.fig');
Ax = gca;
Lines = findobj(Ax,'Type','line');
for k = 1:numel(Lines)
X(k,:) = Lines(k).XData;
Y(k,:) = Lines(k).YData;
pv(:,k) = polyfit(X(k,:), Y(k,:), 3);
yf(k,:) = polyval(pv(:,k),X(k,:));
end
figure
semilogy(X', yf')
grid
legend(Ax.Legend.String)
xlabel(Ax.XLabel.String)
ylabel(Ax.YLabel.String)
It uses polyfit and polyval to fit your data, then plots the fitted data in a new figure. It also re-uses your axis labels and legend strings.
  2 Commenti
Sajid Sarwar
Sajid Sarwar il 29 Giu 2019
@ Star Strider thank you
Star Strider
Star Strider il 29 Giu 2019
As always, my pleasure!

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Log Plots 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