如何格式化数字显示在“uitable”在应用程序设计器?

9次浏览(最近30天)
如何格式化数字显示在“uitable”在应用程序设计器?

接受的答案

MathWorks支金宝app持团队
MathWorks支金宝app持团队 2020年8月4日下午4点
编辑:MathWorks支金宝app持团队 2020年8月4日20:32
有三种变通方法。
1.使用“格式”功能
您可以使用“格式”功能指定显示数字的格式。
例如:
%使用'format'函数指定格式
格式短e
数据(:1)= num2cell ((1:10) ');
rng (1);
数据(:,2)= num2cell(兰德(10 - 1)* 1 e5);
%将数据分配给表
app.UITable.Data =数据;
格式指定为“short e”。这些数字以简短的科学记数法显示,小数点后有4位数字。
请参阅附件“使用格式”。mlapp的完整示例。
有关“格式化”功能的更多信息:
2.使用sprintf函数
如果您想更多地控制数字的显示方式,可以使用“sprintf”函数将数字转换为具有特定格式的字符串。然后在表上显示字符串。
例如:
数据(:1)= num2cell ((1:10) ');
rng (1);
%使用sprintf函数指定格式
数据(:,2)= arrayfun (@ (x) sprintf (“% .2e”1, x),兰德(10日)* 1 e5,“UniformOutput”、假);
%将第四列的‘ColumnFormat’设置为‘numeric’
%将显示的文本向右对齐
app.UITable.ColumnFormat (2) = {“数字”};
%将数据分配给表
app.UITable.Data =数据;
这些数字以科学记数法显示,小数点后有两位数字。
在“arrayfun”函数中,“UniformOutput”选项被指定为false,以使“arrayfun”的输出为一个单元格数组。
请参阅附件“UseSprintf”。mlapp的完整示例。
有关“sprinft”功能的更多信息:
有关“arrayfun”函数中的“UniformOutput”选项的更多信息:
3.使用“cellfun”功能:
如果已经使用混合类型的表,可以将其转换为混合的“单元格”数组,并在数值的格式化和字符串转换应用后将其转换回表。
t = table;
t。一个= {“一个”;“b”;“c”};
t。B= [1.03;5;2.400]
t =
3.×2表
一个B
_________
{“一个”1.03}
{“b”} 5
{“c”2.4}
t = cell2table(cellfun(@(c)) num2str(c,“% g”), table2cell (t)“UniformOutput”假))
t =
3.×2表
Var1Var2
_____________
{“一个”} {“1.03”}
{“b”} {“5”}
{“c”} {“2.4”}

0评论

登录并发表评论。

更多的答案(0)

下载188bet金宝搏


释放

R2018a