Hello I hope you are well I would like to ask you how I adjust the mark values on the X-axis in multiples of 3 or per unit so that the 24 points are observed. Thank you very m
1 view (last 30 days)
Show older comments
Juan David Parra Quintero
on 30 Jul 2023
Edited: Star Strider
on 30 Jul 2023
Hello I hope you are well I would like to ask you how I adjust the mark values on the X-axis in multiples of 3 or per unit so that the 24 points are.
fig=figure(1);
clf;
x1 = [0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23];
y1 = [0 0 0 0 0 0 4 60 3.8 3.8 3.9 5 3 4 3.7 3.5 3.5 3.5 4 3 2.7 2.5 2 2 ];
plot(x1,y1,"-black*")
% cm = gray(5); % Define 'colormap'
% for k = 1:numel(b1)
% b1(k).CData = cm(k+1,:); % Loop To Set Colours
% end
hold on
x1 = categorical(["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; "13" ;"14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"]);
ylim([0 65])
hold off
% xtickangle(45)
% xticklabels({'00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23'});
Tamano_letras_ejes=6.3; % tamño de las etiquetas en los ejes
ax = gca;
ax.FontSize = Tamano_letras_ejes;
xlabel("Horas de ocurrencia, h");
ylabel("Porcentaje de ocurrencia de AT, %");
observed. Thank you very much
0 Comments
Accepted Answer
Star Strider
on 30 Jul 2023
Edited: Star Strider
on 30 Jul 2023
I am not certain what you want.
Try this —
fig=figure(1);
clf;
x1 = [0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23];
y1 = [0 0 0 0 0 0 4 60 3.8 3.8 3.9 5 3 4 3.7 3.5 3.5 3.5 4 3 2.7 2.5 2 2 ];
plot(x1,y1,"-black*")
% cm = gray(5); % Define 'colormap'
% for k = 1:numel(b1)
% b1(k).CData = cm(k+1,:); % Loop To Set Colours
% end
hold on
x1 = categorical(["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; "13" ;"14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"]);
ylim([0 65])
hold off
% xtickangle(45)
% xticklabels({'00', '01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23'});
Tamano_letras_ejes=6.3; % tamño de las etiquetas en los ejes
ax = gca;
ax.FontSize = Tamano_letras_ejes;
xlabel("Horas de ocurrencia, h");
ylabel("Porcentaje de ocurrencia de AT, %");
Ax = gca;
Ax.XTick = 0:24;
Ax.XTickLabel = [string(0:3:24); repmat("",2,9)];
Ax.XTickLabelRotation = 0;
This produces hourly ticks with tick labels every 3 hours.
EDIT — Added ‘XTickLabelRotation’.
.
0 Comments
More Answers (1)
Walter Roberson
on 30 Jul 2023
There is no simple way to configure "as the x limits change due to resize or zoom or pan, change the tick positions to maintain tick every 3" -- xticks() configure the tick positions to the given locations until you change them or the axes is reset. It is possible to hook into notifications about the axes limits changing to call a function to set new xticks(), but there is no simple way to set an algorithm to determine the x tick positions as the axes changes.
0 Comments
See Also
Categories
Find more on Data Distribution Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!