Using num2str to get brackets

Hi,
from
A = [ 54,0.04; 60,0.03; 65,0.02; 67,0.01];
I want to get:
B = [(54,0.04);(60,0.03);(65,0.02),(67,0.01)];
Which I will use to display in a plot. The problem is I can get the comma in the middle using num2str but not the brackets on either side.
I have tried:
for j = 1:size(A,1)
B(j) = ['[',num2str(A(:,1),'%5.3g),']'];
end
But I get a dimension error. Not sure what to try next.
Any help will be great. Thanks

 Respuesta aceptada

Oleg Komarov
Oleg Komarov el 11 de Sept. de 2011

0 votos

Another alternative using sprintf and mat2cell:
mat2cell(sprintf('(%2d,%3.2f)',A.'),1, repmat(9,1,numel(A)/2)).'

1 comentario

Andrei Bobrov
Andrei Bobrov el 11 de Sept. de 2011
hi Oleg! more variant
reshape(sprintf('(%2d,%3.2f)',A.'),[],size(A,1))'

Iniciar sesión para comentar.

Más respuestas (1)

Amandeep
Amandeep el 11 de Sept. de 2011

0 votos

I think I just figured it out, by usingthe code beolw in the plot:-
text(A(j,1),A(j,2),['(' num2str(A(j,1)),',' num2str(A(j,2)) ')']

Categorías

Más información sobre Interactive Control and Callbacks en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 11 de Sept. de 2011

Community Treasure Hunt

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

Start Hunting!

Translated by