我正在尝试将我的条形图的Xticklabels自定义为‘数字(单位)’的格式到目前为止,我有一个向量:
Xticklabels
scanrate = [2;4;6;8;10];
我希望我的条形图有一个x轴:
2mv/s 4mv/s 6mv/s 8mv/s 10mv/s
如果我使用xticklabels(num2str(scanrate)),则将xticklabels更改为scanrate向量中的数字。我想在每个Xtick之后加上Mv/s。
xticklabels(num2str(scanrate))
xticklabels
scanrate
weylhg0b1#
您还可以使用strcat:
strcat
xticklabels(strcat(num2str(scanrate),' mv/s'))
请注意,只有当scanrate是列向量时,它才起作用。有趣的事实:
num2str(scanrate) + " mv/s"
也很管用,但是
num2str(scanrate) + ' mv/s'
不
voj3qocg2#
使用sprintf()构建字符串,其中%d标志表示无符号整数:
sprintf()
%d
my_labels = {}; for ii = 1:numel(scanrate) my_labels{ii} = sprintf('%dmv/s', scanrate(ii)); end figure; % (...) make your plot xticklabels(my_labels)
另一种俏皮话,多亏了沃尔夫的评论:
my_labels = arrayfun(@(x)sprintf('%dmv/s',x),scanrate,'uni',0);
附注:在创建这种类型的情节时,通常不会这样做。你只需要在轴上有数字和一个标签,上面写着“速度[mv/s]”,而不是在每个刻度标签上都有单位。
2条答案
按热度按时间weylhg0b1#
您还可以使用
strcat
:请注意,只有当
scanrate
是列向量时,它才起作用。有趣的事实:
也很管用,但是
不
voj3qocg2#
使用
sprintf()
构建字符串,其中%d
标志表示无符号整数:另一种俏皮话,多亏了沃尔夫的评论:
附注:在创建这种类型的情节时,通常不会这样做。你只需要在轴上有数字和一个标签,上面写着“速度[mv/s]”,而不是在每个刻度标签上都有单位。