
How to increase xticks to axis
    4 views (last 30 days)
  
       Show older comments
    
Hi, I have tried different solutions online but nothing works. I have a row vector of dimension (1x19) where each value is for years 1995 to 2013. With below script, I get ticks for every other year, but I want it for each year. How can I do this?
y_data=rand(1,19);
x = linspace(1995,2013,19);
plot(x,y_data)
xticks(1995:1:2013);
xticklabels({'1995'	'1996'	'1997'	'1998'	'1999'	'2000'	'2001'	'2002'	'2003'	'2004'	'2005'	'2006'	'2007'	'2008'	'2009'	'2010'	'2011'	'2012'	'2013'})
xlim([1995 2013]);
0 Comments
Accepted Answer
  Adam Danz
    
      
 on 14 May 2019
        
      Edited: Adam Danz
    
      
 on 14 May 2019
  
      Your code should already by providing annual ticks.  Nevertheless, here are some improvements.
y_data=rand(1,19);
x = 1995:1:2013; 
plot(x,y_data)
xticks(x);
% xticklabels({'1995'	'1996'	'1997'	'1998'	'1999'	'2000'	'2001'	'2002'	'2003'	'2004'	'2005'	'2006'	'2007'	'2008'	'2009'	'2010'	'2011'	'2012'	'2013'})
% Remove the line above!
xlim(x([1,end]));

Alternatively, you could use a datetime axis by replacing 1 line above.
% Replace this
x = 1995:1:2013; 
% with this
x = years(1995:1:2013); 
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
