How would i display a matrix as a graph?

4 次查看(过去 30 天)
I have a matrix in which the values are mainly in the main diagonal. What i want to do is create a bigger matrix in which each row of the matrix is a line so it would show the values of each row across several lines. So for example if i have an identity 3x3 matrix, it would be three lines with spikes on the main diagonal.
  13 个评论
Feliciano Döring
Feliciano Döring 2018-10-24
The plot doesn't quite fit. But here take a look

请先登录,再进行评论。

采纳的回答

jonas
jonas 2018-10-24
编辑:jonas 2018-10-24
Here's a custom plot type I made. It may look upside down, but the value on the y-axis denotes the row number. The "peak value" of the lines are scaled and only show relative height.
A = eye(5);
scale = 2;
figure;hold on
for j = 1:size(A,1);
y = A(j,:)./scale+j;
fill([1 1:size(A,1) size(A,1)],[min(y) y min(y)],'r');
end
If you prefer the reverse order, as they appear in the matrix, then just change the 5th line to
y = A(j,:)./scale+(size(A,1)-j);
  5 个评论
jonas
jonas 2018-10-29
I believe I adressed this in the original answer?
y = A(j,:)./scale+(size(A,1)-j);

请先登录,再进行评论。

更多回答(0 个)

标签

Community Treasure Hunt

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

Start Hunting!

Translated by