求助:使用for循环实现Matlab可变数量条形图的图例填充
适配可变长度向量的条形图图例实现
直接根据向量test的长度动态生成图例标签即可,不需要手动逐个输入。以下是修改后的代码:
test = [1,2,3,4,5]; % 这里可以替换成任意长度的向量 bar(diag(test), 'stacked') % 动态生成图例标签 label_count = length(test); labels = cell(1, label_count); for i = 1:label_count labels{i} = sprintf('label%d', i); end legend(labels); xlabel('labels') title('Title')
关键说明:
- 用
length(test)获取向量的元素个数,以此确定需要生成多少个图例标签 - 用单元格数组
labels存储动态生成的标签,通过循环和sprintf自动生成带序号的标签文本 - 直接把单元格数组传入
legend函数,它会自动适配标签数量
内容的提问来源于stack exchange,提问作者Guest
相关产品推荐
相关产品推荐

