You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为分组条形图与保留绘图添加XTickLabels的技术需求

Matlab绘图:用矩阵b设置横轴标签(条形图+折线图)

1. 分组条形图添加横轴标签

你的循环绘制分组条形图时,每个条形组的横轴位置对应b的每行数值。要把这些数值作为横轴标签,只需整理所有需要显示的标签,再统一设置坐标轴的XTick和XTickLabels即可:

修改后的代码:

a=[4.54,88.63,27.27,77.27,54.54;31.81,61.36,38.63,68.18,54.54;54.54,61.36,59.09,54.54,50;68.18,27.27,56.81,34.09,50;90.90,11.36,68.18,15.90,40.90];
b=[0.40,0.55,0.70,0.85,1;1.39,1.54,1.69,1.84,1.99;2.340,2.49,2.64,2.79,2.94;3.36,3.51,3.66,3.81,3.96;4.29,4.44,4.59,4.74,4.89];

figure,
hold on
% 绘制所有条形图
for i=1:5
    bar(b(i,:),a(:,i))
end
% 整理所有横轴标签(把b的所有元素转成字符串数组)
all_labels = string(b(:));
% 设置横轴刻度位置和标签
xticks(b(:));
xticklabels(all_labels);
% 可选:旋转标签避免重叠
xtickangle(45);
hold off

2. 折线图设置XTickLabels

折线图的横轴对应b的前3行数值,同样先确定要显示的刻度位置,再设置标签:

修改后的代码:

figure,
hold on
% 绘制所有折线
for i=1:3
    plot(b(i,:),a(:,i))
end
% 提取前3行的b值作为刻度位置和标签
tick_positions = b(1:3,:);
tick_labels = string(tick_positions(:));
% 设置横轴刻度和标签
xticks(tick_positions(:));
xticklabels(tick_labels);
xtickangle(45);
hold off

内容的提问来源于stack exchange,提问作者Kanjoo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 09:33:17