Plot two spectrum plot in one spectrum plot?

Hi ,
I have a question regarding plotting of two spectrum plots into one spectrum but resultant plot must be appended after the first plot.
I have saved spectrum as a figure.
I have read many threads all of them are supporimposing or making sub plots.
My query is that how to join one figure plot line with second figure plot line.
I have attached as a reference two figures.
Both figures have same x axis label(0-400) but I want resultant plot must have consistant values like 0 - 800.

 Risposta accettata

Ameer Hamza
Ameer Hamza il 4 Mag 2020
Modificato: Ameer Hamza il 4 Mag 2020
Try this, using the two fig files you shared.
fig1 = openfig('Ichannel0_400_1.fig');
fig2 = openfig('Ichannel_400_1_800.fig');
ax1 = findobj(fig1, 'type', 'axes');
ax2 = findobj(fig2, 'type', 'axes');
l1 = findobj(fig1, 'type', 'line');
l2 = findobj(fig2, 'type', 'line');
l1.XData = [l1.XData l2.XData+l1.XData(end)];
l1.YData = [l1.YData l2.YData];
ax1.XLim = [min(l1.XData) max(l1.XData)];
figure(fig1);

10 Commenti

thanks for prompt response;
Dear is it possible to also change some y values of the plot.Means I want to get rid of ambiguos peaks
Can you mark the peaks on an image which you want to remove?
yes at 400 and 800 .
Something like this?
fig1 = openfig('Ichannel0_400_1.fig');
fig2 = openfig('Ichannel_400_1_800.fig');
ax1 = findobj(fig1, 'type', 'axes');
ax2 = findobj(fig2, 'type', 'axes');
l1 = findobj(fig1, 'type', 'line');
l2 = findobj(fig2, 'type', 'line');
l1.XData = [l1.XData l2.XData+l1.XData(end)];
l1.YData = smoothdata([l1.YData l2.YData]);
ax1.XLim = [min(l1.XData) max(l1.XData)];
figure(fig1);
Thanks Ameer Hamza
I am glad to be of help.
Hi Ameer,
I want to ask that is there a way to normalize the plot too?
Means values start from zero rather than sum value.
Can you explain more? Do you want the value of start of the signal to be 0?
Yes Ameer Y axis value must be zero for 0 Hz. Means all value must be divided by max gain(i.e. st 0 hz).
If you divide by max value than the gain will be 1 at 0Hz. I think you can just subtract the value of the signal at 0Hz.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Creating, Deleting, and Querying Graphics Objects in Centro assistenza e File Exchange

Prodotti

Release

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by