how to write years in xtick.
Mostrar comentarios más antiguos
sir i want to write years in xtick like this figure and also write R2 value in figure how can do this? please help.thank you in advance.

Respuestas (2)
Chad Greene
el 18 de Jun. de 2014
2 votos
If your x vector is in datenum format, you can use datetick('x','yyyy').
Azzi Abdelmalek
el 26 de Mayo de 2014
1 voto
4 comentarios
ravi
el 27 de Mayo de 2014
ravi
el 18 de Jun. de 2014
Azzi Abdelmalek
el 18 de Jun. de 2014
I adapted the code from the previous link to plot x,y
% Generate some test data. Assume that the X-axis represents months.
x = 1901:3:2003
y = 10*rand(1,length(x));
% Plot the data.
h = plot(x,y);
% Reduce the size of the axis so that all the labels fit in the figure.
pos = get(gca,'Position');
set(gca,'Position',[pos(1), .2, pos(3) .65])
% Add a title.
title('This is a title')
% Set the X-Tick locations so that every other month is labeled.
Xl = [1901 2003];
set(gca,'XTick',x,'XLim',Xl);
% Add the months as tick labels.
years=cellfun(@num2str,num2cell(x),'un',0)
ax = axis; % Current axis limits
axis(axis); % Set the axis limit modes (e.g. XLimMode) to manual
Yl = ax(3:4); % Y-axis limits
% Place the teaxt labels
t = text(x,Yl(1)*ones(1,length(x)),years);
set(t,'HorizontalAlignment','right','VerticalAlignment','top', ...
'Rotation',90);
% Remove the default labels
set(gca,'XTickLabel','')
% Get the Extent of each text object. This
% loop is unavoidable.
for i = 1:length(t)
ext(i,:) = get(t(i),'Extent');
end
% Determine the lowest point. The X-label will be
% placed so that the top is aligned with this point.
LowYPoint = min(ext(:,2));
% Place the axis label at this point
XMidPoint = Xl(1)+abs(diff(Xl))/2;
tl = text(XMidPoint,LowYPoint,'X-Axis Label', ...
'VerticalAlignment','top', ...
'HorizontalAlignment','center');
ravi
el 19 de Jun. de 2014
Categorías
Más información sobre Axis Labels en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!