Unable to control floating point display?

2 visualizaciones (últimos 30 días)
Roger Breton
Roger Breton el 14 de Mzo. de 2022
Comentada: Roger Breton el 15 de Mzo. de 2022
I have this result :
There should be three Lab numbers on the third line but only L and a are showing, with two decimals of precision each (50.91 -46.21 ,). I have not completely figured out how to control the num2str conversion, the best I had was this :
Line1 = ['(X,Y) = ', num2str(posX), ', ', num2str(posY)];
Line2 = ['RGB = ', num2str(RGB(1,1,1)), ', ', num2str(RGB(1,1,2)), ' , ', num2str(RGB(1,1,3))];
Line3 = ['Lab = ', num2str(Lab(1,1,1),2), ', ', num2str(Lab(1,1,2),2), ' , ', num2str(Lab(1,1,3),2)];
Line4 = ['Lch = ', num2str(Lab(1,1,1),2), ', ', num2str(chroma,2), ' , ', num2str(hueAngle,3), '°'];
I have not figured out yet the proper parameters to get a conversion from double to string with no decimal part?

Respuesta aceptada

Stephen23
Stephen23 el 14 de Mzo. de 2022
Editada: Stephen23 el 14 de Mzo. de 2022
It would be better to use SPRINTF rather than NUM2STR. For example:
Line1 = sprintf('(X,Y) = %u, %u', posX, posY);
Line2 = sprintf('RGB = %.0f, %.0f, %.0f', RGB(1,1,1:3));
Line3 = sprintf('RGB = %.2f, %.2f, %.2f', Lab(1,1,1:3));

Más respuestas (1)

Walter Roberson
Walter Roberson el 14 de Mzo. de 2022
round()
  2 comentarios
Roger Breton
Roger Breton el 14 de Mzo. de 2022
Thank you so much Mr. Roberson :-)
Roger Breton
Roger Breton el 15 de Mzo. de 2022
I ended up using your solution ;-)

Iniciar sesión para comentar.

Categorías

Más información sobre Characters and Strings en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by