How to keep scientific notation in string.

44 ビュー (過去 30 日間)
daniel adams
daniel adams 2021 年 12 月 14 日
回答済み: Walter Roberson 2021 年 12 月 14 日
I have some values in an array in matlab
epsilon=[1e-01,9e-02,8e-02]
I want to turn these values into a string so I can use them on plots etc.
stringepsilon=string(epsilon)
but the output is not in scientific format :
stringeps="0.1" "0.89" "0.08"
how do I make it appear in scientific format.

回答 (2 件)

Awais Saeed
Awais Saeed 2021 年 12 月 14 日
編集済み: Awais Saeed 2021 年 12 月 14 日
epsilon=[1e-01,9e-02,8e-02];
% try num2str()
str1 = string(num2str(epsilon,'%.e '))
str1 = "1e-01 9e-02 8e-02"
% or try sprintf()
str2 = string(sprintf('%.e ',epsilon))
str2 = "1e-01 9e-02 8e-02 "
whos
Name Size Bytes Class Attributes epsilon 1x3 24 double str1 1x1 170 string str2 1x1 172 string
  1 件のコメント
daniel adams
daniel adams 2021 年 12 月 14 日
Yeh I dont really want size $1x1$ though?

サインインしてコメントする。


Walter Roberson
Walter Roberson 2021 年 12 月 14 日
epsilon=[1e-01,9e-02,8e-02];
compose("%.e", epsilon)
ans = 1×3 string array
"1e-01" "9e-02" "8e-02"

カテゴリ

Find more on Characters and Strings in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by