2010-07-05 17 views
0

我得到了一个矩阵A = magic(4),并希望使用plot3(1:4,1:4,A,'ks')绘制这些值。但是,它绘制了对角线上的所有东西,而不是它们实际上与矩阵中其他值相对的位置。我怎么做?我确定这很容易,但我是matlab新手。使用Matlab制作矩阵条目的绘图

+0

可能重复http://stackoverflow.com/questions/3169263/line-图式与Matlab)。重复的用户,接近重复的问题。 – Jonas 2010-07-05 04:23:01

回答

2

您可以使用MESHGRID产生的XY坐标散点的矩阵:

[X,Y] = meshgrid(1:4); %# X and Y are each 4-by-4 matrices, just like A 
plot3(X,Y,A,'ks');  %# Make a 3-D plot of the points 

你也可以绘制表面,而不是一组使用功能SURF点,在这种情况下,需要使用MESHGRID生成XY坐标是可选的:

surf(X,Y,A);  %# Use the 4-by-4 matrices from MESHGRID 
surf(1:4,1:4,A); %# Pass 1-by-4 vectors instead 
surf(A);   %# Automatically uses 1:4 for each set of coordinates 
1

@gnovice将是我answe河

我会补充说,有时一个简单的于imagesc是可视化矩阵不错:

imagesc(A) 
[在Matlab线图](的