UITABLE で表示される数値を任意桁数で表示できますか?
7 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
MathWorks Support Team
le 10 Mai 2017
Réponse apportée : MathWorks Support Team
le 10 Mai 2017
UITABLE で数値を表示するとき、デフォルトでは小数点 4 桁まで表示されますが、それ以上の桁数を表示する方法を教えてください。
Réponse acceptée
MathWorks Support Team
le 11 Mai 2017
uitable 関数では、ColumnFormat プロパティを使って、format コマンドで指定可能な数値書式で表示させることが可能です。
>> f = figure;
>> t = uitable(f,'Data',rand(10,2));
>> set(t,'ColumnFormat',{'long G', 'long E'})
詳細については、ヘルプドキュメントより、uitable オブジェクトの ColumnFormat プロパティをご確認ください。
なお、format コマンドで指定できるフォーマット以外の、任意書式を指定するための機能は提供されていません。
代替案として、sprintf 関数を使用し、数値データを書式を指定した文字列に変換し、テーブルに表示させる方法があります。
f = figure('Position',[100 100 400 150]);
dat = num2cell(rand(3,2));
columnname = {'Rate', 'Amount'};
columneditable = [false false];
t = uitable('Units','normalized','Position',...
[0.1 0.1 0.9 0.9], 'Data', dat,...
'ColumnName', columnname,...
'ColumnEditable', columneditable);
data = get(t, 'data');
for i = 1:numel(data)
if(isnumeric(data{i}))
tempStr = sprintf('%1.6g', data{i}); % 任意書式を指定し文字列として出力
data{i} = tempStr;
end
end
set(t, 'Data', data); % Data プロパティを更新
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Symbolic Math Toolbox dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!