fprintf table not aligned

6 vues (au cours des 30 derniers jours)
Kalpha.mc
Kalpha.mc le 4 Oct 2020
Modifié(e) : Sindar le 4 Oct 2020
My fprintf table has two numbers off that i can't seem to fix.
Here is my work
table = [r' c' a' s' v'];
fprintf('%5.2f\t%5.3f\t%5.1f\t%5.4f\t%5.3f\n',table')
this is the outcome of my problem
2.50 15.708 19.6 78.5398 65.450
2.89 18.151 26.2 104.8749 100.991
3.28 20.595 33.8 135.0109 147.512
How to make it look like this?
2.50 15.708 19.6 78.5398 65.450
2.89 18.151 26.2 104.8749 100.991
3.28 20.595 33.8 135.0109 147.512

Réponses (1)

Sindar
Sindar le 4 Oct 2020
Modifié(e) : Sindar le 4 Oct 2020
generally, I suggest not using tabs when you want a table aligned. Instead, set the field widths larger:
fprintf('%6.2f %9.3f %7.1f %10.4f %9.3f\n',table')
I got the specific numbersby trial and error, but there is a formula:
  • first width only needs to fit that data, so assuming that all data is <1000, we have 3 [digits before decimal] + 1 [decimal] + 2 [digits after decimal] = 6
  • remaining fields should also include some padding between columns, so 4 [padding] + 3 [digits before decimal] + 1 [decimal] + 1-4 [digits after decimal] = 8-10

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Tags

Produits


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by