How to scale the x axis ?

I have two plots from the same sensors. One plot is from target computre and one plot is from my PC. I want to scale the x-axis in such a way that they both look same. Please guide me. Thanks.

4 commentaires

madhan ravi
madhan ravi le 31 Août 2018
upload your code
jonas
jonas le 31 Août 2018
Modifié(e) : jonas le 31 Août 2018
There's no way to scale the x-axis so they look the same. You can however manipulate the x-data in various ways. If you want to automate this process, then I'd apply variable translation and scale factors to the x-data of one series and then find the optimal parameters by minimizing the residuals. Perhaps this is a bit overkill.
Husnain Ahmed
Husnain Ahmed le 31 Août 2018
plot(Time_vector,cyl_pos/1000) %Data from Target PC xlim([0 25]) hold on plot(pos.time/100,pos.signals.values) %Data from my PC
Saskia van der Peet
Saskia van der Peet le 29 Juil 2020
Thank you! This helped me a lot!

Connectez-vous pour commenter.

Réponses (2)

Star Strider
Star Strider le 31 Août 2018

1 vote

I am not certain what you want to do.
If you want to actually synchronize the signals, consider using the alignsignals (link) function, that I believe was introduced in R2016b. Another option is the dtw (link) ‘dynamic time warping’ function, introduced in R2016a.
Jim Riggs
Jim Riggs le 31 Août 2018
Modifié(e) : Jim Riggs le 31 Août 2018

0 votes

First, you need to get the handle to the current axes:
h=gca;
This gives the handle to the current plot axes. Now you can modify the properties of the axes. To set the X axis limits use:
set (h,'Xlim',[xmin,xmax]);
One good way to keep track of plot handles is to assign them when you make the plot:
h1=plot(...);
...
...
h2=plot(...);
now you can manipulate the different plots:
set(h1,...);
set(h2,...);

2 commentaires

Husnain Ahmed
Husnain Ahmed le 31 Août 2018
Can you please tell me what should i write in h1=plot(. . .); ? Matlab gives me Invalid use of operator error. When i give some value
Jim Riggs
Jim Riggs le 31 Août 2018
That is your plot command when you create the plot axes, e.g.
h=plot(Time_vector,cyl_pos/1000);

Connectez-vous pour commenter.

Catégories

En savoir plus sur Line Plots dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by