how to add percentage symbol (%) in a label
145 次查看(过去 30 天)
显示 更早的评论
Hi,
I would like to plot a bargraph and add labels to the bars, showing a numerical value followed by the percentage symbol (%). Please find below a MWE:
x=table{:,"Xvalues"};
y=table{:,"Yvalues"};
barGraph=bar(x,y,0.9);
xtips1=barGraph(1).XEndPoints;
ytips1=barGraph(1).YEndPoints;
labels1=sprintfc('%.2f',table.labels);
text(xtips1,ytips1,labels1,'Rotation',45);
I know I can do that by defining 'labels1' as a string and then adding ' + '%' ' into the text command, as in:
x=table{:,"Xvalues"};
y=table{:,"Yvalues"};
barGraph=bar(x,y,0.9);
xtips1=barGraph(1).XEndPoints;
ytips1=barGraph(1).YEndPoints;
labels1=string(table.labels);
text(xtips1,ytips1,labels1 + '%','Rotation',45);
in this case, though, I cannot cut the values in 'labels1' after the second decimanl digit.
Thanks
2 个评论
Matt J
2023-10-15
We do not have your "table" variable and so cannot run the example. Also, "table" is inadvisable as a name for the varable, since it is also the name of a command.
采纳的回答
Star Strider
2023-10-15
The approach seems to work here using synthetic data —
% x=table{:,"Xvalues"};
% y=table{:,"Yvalues"};
x = 1:5;
y = round(rand(1,5)*100);
barGraph=bar(x,y,0.9);
labels = y;
xtips1=barGraph(1).XEndPoints;
ytips1=barGraph(1).YEndPoints;
% labels1=string(table.labels);
labels1 = string(labels);
text(xtips1,ytips1,labels1 + '%','Rotation',45);
If this does not work with your data, you will need to supply it.
.
2 个评论
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!