Plot3 with different length of vectors

5 次查看(过去 30 天)
I have 3 parameter. Error, SNR, Weights
1. Error is a 3x9 data
2. SNR = [15,30,50]
3. Weights = 0.1:0.1:0.9
So basically, i want to see the evolution of my error with respect to the weight and SNR
I have done this with surf. but I want to try plot3, unfortunaley it doesnt work when length of vectors are unequal. is there a work around this?

采纳的回答

Adam Danz
Adam Danz 2019-1-9
编辑:Adam Danz 2019-1-9
You need to specify the x (SNR) and y (Weight) coordinate for each z-value (error). Since z is a matrix, x and y need to be matricies of the same size.
SNR = repmat([15 30 50]', 1, size(error,2)); %note the transpose
Weight = repmat(0.1 : 0.1 : 0.9, size(error,1),1);
plot3(SNR, Weight, error)
  3 个评论
Adam Danz
Adam Danz 2019-1-9
I'm not sure what you're expecting. plot3() draws a line for each column of data in the inputs.
Are you lookng for a surface plot?
surf(SNR, Weight, error)
Or are you looking for a continuous line?
plot3(SNR(:), Weight(:), error(:))
fadams18
fadams18 2019-1-9
You right it looks good with Surf. Thanks mate!.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 2-D and 3-D Plots 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by