plotting matrix verses vector
Mostrar comentarios más antiguos
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 comentarios
Steven Lord
el 26 de Oct. de 2018
What is the full text (everything displayed in red) of the error message?
What do the following commands show?
sf = size(p.f)
cf = class(p.f)
sh = size(H)
ch = class(H)
Stephen23
el 26 de Oct. de 2018
You could just plot the whole matrix like this:
plot(p.f,H.')
Alice Faisal
el 26 de Oct. de 2018
Respuestas (2)
Star Strider
el 26 de Oct. de 2018
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 comentarios
Alice Faisal
el 26 de Oct. de 2018
Star Strider
el 26 de Oct. de 2018
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
el 26 de Oct. de 2018
Editada: madhan ravi
el 26 de Oct. de 2018
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
Categorías
Más información sobre Mathematics en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!