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 次查看(过去 30 天)
显示 更早的评论
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![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1445827/image.jpeg)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1445827/image.jpeg)
0 个评论
采纳的回答
Star Strider
2023-7-30
编辑:Star Strider
2023-7-30
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 个评论
更多回答(1 个)
Walter Roberson
2023-7-30
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 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Axis Labels 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!