필터 지우기
필터 지우기

Plotting use datenum

조회 수: 1 (최근 30일)
Maeve  Ryan
Maeve Ryan 2012년 1월 26일
Hello, I want to make a Matlab plot with the months of the year on the x-axis. I am trying to plot a total of 17520 readings (48 per day) on the y-axis and then show the months on the x-axis. The problem with the code I am using now is that the vectors are different lengths (b is 12 and a is 17520).
Here is my code:
function [y] = doc_concentration
a = xlsread ('DOC_Conc_2007-2011.xlsx',1,'A3:A17522');
startDate = datenum('01-01-2007');
endDate = datenum('12-31-2007');
b = linspace(startDate,endDate,12);
length(a)
length (b)
plot (b,a)
set(gca,'XTick',g)
datetick('x','mmm','keepticks')
end
Can anyone help? Thanks in advance.
Maeve
  댓글 수: 1
Jan
Jan 2012년 1월 26일
Please format your code properly using the "{} code" button. I've done this for you this time.

댓글을 달려면 로그인하십시오.

답변 (1개)

Jan
Jan 2012년 1월 26일
Why do you use 12 bins, if you need 17520? What about:
b = linspace(startDate, endDate, 17530)
  댓글 수: 4
Maeve  Ryan
Maeve Ryan 2012년 1월 26일
ok using set (gca,'XLIM',[startDate,endDate}] removed the January label from the next year which helps.
I still cannot figure out how to get every month to appear on the x-axis instead of just every fourth month which is happening now
Jan
Jan 2012년 1월 26일
You can set the ticks explicitely instead of using "set(gca, 'YTick', B'; datetick('x', 'mmm');".

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Dates and Time에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by