スペースの制約が厳しいグラフィック注釈の場合、各数値の表現文字列の長さを最小限に抑える方法で数値をフォーマットしたいと考えています。たとえば、10 の累乗は次のようにフォーマットする必要があります。
- 1e-4
- 1e-3
- 0.01
- 0.1
- 1
- 10
- 100
- 1e3
- 1e4
as.character
ほとんどこれを行うように見えますが、残念ながら、1 桁の指数に冗長な先行ゼロを配置し、正の指数の前に冗長な '+' を挿入します。
> as.character(10^(-5:5))
[1] "1e-05" "1e-04" "0.001" "0.01" "0.1" "1" "10" "100" "1000" "10000" "1e+05"
したがって、たとえば、1e5 の代わりに、長さがほぼ 2 倍の 1e+05 が得られます。