Improving readability of Matlab graph
8 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Aleem Andrew
el 5 de Abr. de 2020
Comentada: Fego Etese
el 6 de Abr. de 2020
The plot generated by the following code appears with the ticks labelled 1 to 25 for the x axis and 0 to 20 for the y axis. I want the ticks to appear but not to be labelled. Does anyone have suggestions as to how I should modify the code?
x=linspace(0,10,100000000);
y = 4*(1-exp(-0.001*x/(1.05*10^-4)));
plot( x,y)
xlim([0 25])
ylim([-20 20])
set(gca,'xtick',-25:1:25)
set(gca,'ytick',-20:1:20)
0 comentarios
Respuesta aceptada
Adam Danz
el 5 de Abr. de 2020
Editada: Adam Danz
el 5 de Abr. de 2020
Method 1: remove some X|YTickLabels
Add these lines to then end of your code after setting the axis limits and axis ticks.
The tickInterval variable defines the interval of ticks to display.
tickInterval = 4;
ax = gca();
ax.XTickLabel(~ismember(1:numel(ax.XTickLabel), 1:tickInterval:numel(ax.XTickLabel))) = {''};
ax.YTickLabel(~ismember(1:numel(ax.YTickLabel), 1:tickInterval:numel(ax.YTickLabel))) = {''};
Method 2: Use Minor Ticks
This method may not be available on all types of axes.
ax = gca();
ax.XTick = 0:5:25;
ax.YTick = -25:5:25;
ax.XMinorTick = 'on';
ax.XRuler.MinorTickValues = 0:1:25;
ax.YMinorTick = 'on';
ax.YRuler.MinorTickValues = -25:1:25;
Also see ax.XRuler.TickLength to change the tick lengths.
2 comentarios
Fego Etese
el 6 de Abr. de 2020
Hey Adam Danz, please i need your help on this question
I will be grateful if you can help me, thanks
Más respuestas (1)
Ameer Hamza
el 5 de Abr. de 2020
Try this
x=linspace(0,10,100000000);
y = 4*(1-exp(-0.001*x/(1.05*10^-4)));
plot( x,y)
xlim([0 25])
ylim([-20 20])
set(gca,'xtick',-25:1:25, 'XTickLabel', {}) %<--- remove labels
set(gca,'ytick',-20:1:20, 'YTickLabel', {})
Ver también
Categorías
Más información sobre Grid Lines, Tick Values, and Labels en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!