MATLAB text 批量标注 sprintfc

在Matlab中,text函数的批量标注需要使用,例如

plot(1:10)
str = {{'A simple plot','from 1 to 10'},'y = x'};
text([2 8],[7 7],str)

其中,最重要的是将数组(例如,[3,6,9])转化为字符串向量的cell(例如,['3', '6', '9']),不用for循环,那么可以使用sprintfc('%g',a)函数(尽管,help sprintfc查不到)。使用方法为,例如,

 

a= [3,6,9];

sprintfc('%g',a);

 

ans =

  1×5 cell 数组

  {'2.8'} {'2.5'} {'2.3'} {'2.1'} {'1.9'}

 

以此完成text的批量标注!

 

参考:

[1]. 如何把数字数组转化成字符串数组
https://www.ilovematlab.cn/thread-280730-1-1.html
(出处: MATLAB中文论坛)

[2]. MATLAB把数字数组变为字符数组

感谢 https://www.cnblogs.com/sunny99/ sumoier对本文的帮助!

posted @ 2022-03-05 18:06  20岁博客少女  阅读(422)  评论(0编辑  收藏  举报