MATLAB: failed creating a diagonal matrix

I have to make a diagonal matrix using diag command in Matlab, the numbers of the main diagonal are 1,2 and 3 . I have tried typing this code:
x=[1 2 3]; matriz=diag(x)
matriz =
1 2 3
but there is not the diagonal 3x3 matriz, please, could you help me solving this problem? Thanks! PS. As far as I'm concerned, it is supposed to show this:
B=[1 0 0;0 2 0;0 0 3]
B =
1 0 0
0 2 0
0 0 3

Answers (1)

James Tursa
James Tursa on 11 Nov 2021
Edited: James Tursa on 11 Nov 2021
You probably have inadvertently created a variable named 'diag' in your workspace, and hence diag(x) is simply indexing into this variable. Clear that variable from your workspace and use a different name in the future. To confirm that this is the problem you can type the following:
which diag

Categories

Products

Release

R2021a

Tags

Asked:

on 11 Nov 2021

Edited:

on 11 Nov 2021

Community Treasure Hunt

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

Start Hunting!