how to scale values while plotting graphs in matlab

in my program i have to read a variable from an excel sheet of size 3600sec*24hrs.(column wise)
GDOP1=[]
GDOP=xlsread('positions.xlsx','GDOP'); => size=3600*24
for j=1:1
GDOP1=[GDOP1 GDOP(j:end)] =>size=1*86400(i.e one day data in sec)
end
now my problem is to plot this data(GDOP1) on y-axis against time on x axis in the form of 0 to 24hrs rather than from 0 to 86400 seconds

6 个评论

It appears that you have data collected every second for 24 hours.
What do you mean by ‘scale this data(GDOP1) from 0 to 24hrs’. How do you want to ‘scale’ it?
while plotting i want x axis in hrs rather than seconds
How are you plotting it? Which variable, or column, is x and which is y?
GDOP1(of size 1*86400) should be plotted on y axis and time on x axis the thing is time is in seconds but i would like it to scale down to hours
That didn't answer a single one of my questions. I was expecting something like "the y values are in column 2 of GDOP1, and the x values are in column 1 but are in units of seconds instead of hours like I want. I'm plotting them like this
x = GDOP1(:, 1);
y = GDOP1(:, 2);
plot(x, y, 'b-');
Now, can you try again? Or, for bonus points, attach your workbook?
in workbook i have only gdop values read for 24hrs such that each column represents 1 hour data and each block in that column is the gdop value for a sec

请先登录,再进行评论。

 采纳的回答

This seems close to what you want to do:
sec = [1:86400]'; % Time In Seconds
GDOP1 = 0.1*randn(86400, 1) - cos(2*pi*sec/86400); % Create Data
hrs = sec/(60*60); % Convert Seconds To Hours
figure(1)
plot(hrs, GDOP1)
grid

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Modeling 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by