How to display a string and matrix in MATLAB?

조회 수: 3,365(최근 30일)
Amit Kumar
Amit Kumar 2014년 2월 18일
답변: KAREN MEZA FLORES 2021년 10월 21일
Hi all,
This question can look very basic to some experts of this forum, however the question bugs me as I am not an expert.
Say I initialize A= 3x3 unit matrix.
I want to display:
The result is: followed by matrix A.
I tried fprintf, but I guess it doesn't support matrix and I got errors.
disp() doesn't support displaying text+matrix.
Any idea how to do this?

채택된 답변

Jos (10584)
Jos (10584) 2014년 2월 18일
편집: MathWorks Support Team 2018년 11월 27일
To display some text and a matrix, you can use two disp statements. This makes the code easy to understand and maintain.
For example, this code:
A = magic(3)
disp('The result is:')
The result is:
8 1 6
3 5 7
4 9 2
If a one line solution is needed, you can use the num2str function to convert the matrix to a character array. This displays the contents of the array as a row vector though, changing the original shape of the matrix. To maintain the original shape of the matrix, use the first approach.
For example, this code:
A = magic(3)
disp(['The result is: [' num2str(A(:).') ']']) ;
The result is: [8 3 4 1 5 9 6 7 2]
  댓글 수: 6
Amit Kumar
Amit Kumar 2014년 2월 20일

댓글을 달려면 로그인하십시오.

추가 답변(2개)

KAREN MEZA FLORES 2021년 10월 21일
bro how do you even code - thanks

JIAN CUI 2016년 10월 26일
Same question, sometimes I wish to print sentence like 'The sum of matrix 1...n is N', which involves a matrix [1 .. n] and variable N, as well as strings. So how am I suppose to print this one out? Thank you!



Community Treasure Hunt

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

Start Hunting!

Translated by