plotting matrix verses vector

조회 수: 5 (최근 30일)
Alice Faisal
Alice Faisal 2018년 10월 26일
편집: madhan ravi 2018년 10월 26일
Good evening
I want to plot a frequency vector (x-axes) with a path loss matrix which is 16*16
I tried this but it gives me an error
figure(1);
plot(p.f,H(1,:),
p.f,H(2,:),
p.f,H(3,:),
p.f,H(4,:),
p.f,H(5,:),
p.f,H(6,:),
p.f,H(7,:),
p.f,H(8,:),
p.f,H(9,:),
p.f,H(10,:),
p.f,H(11,:),
p.f,H(12,:),
p.f,H(13,:),
p.f,H(14,:),
p.f,H(15,:),
p.f,H(16,:));
  댓글 수: 3
Stephen23
Stephen23 2018년 10월 26일
You could just plot the whole matrix like this:
plot(p.f,H.')
Alice Faisal
Alice Faisal 2018년 10월 26일
Vectors must be the same length.
It gives me this error now

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

답변 (2개)

Star Strider
Star Strider 2018년 10월 26일
The easiest solution is likely:
plot(p.f, H)
If ‘H’ is a square matrix, and you want to transpose it, use:
plot(p.f, H.')
instead.
  댓글 수: 2
Alice Faisal
Alice Faisal 2018년 10월 26일
Vectors must be the same length.
It gives me this error now
Star Strider
Star Strider 2018년 10월 26일
I assumed ‘p.f’ is a vector.
If it a matrix the same size as ‘H’, either of my plot calls will work:
p.f = rand(16);
H = rand(16, 16);
figure
plot(p.f, H)
If not, you will have to choose what vector in ‘p.f’ to plot with. The vector must have 16 elements to plot with your (16x16) matrix.

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


madhan ravi
madhan ravi 2018년 10월 26일
편집: madhan ravi 2018년 10월 26일
An example its possible using loop:
H=rand(16)
p.f = 1:16
figure(1);
for i = 1:length(H)
plot(p.f(1,:),H(i,:))
hold on
end

카테고리

Help CenterFile Exchange에서 Mathematics에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by