Plot3 using 3 vectors of different length,
8 views (last 30 days)
Show older comments
Waqar Ahmad
on 20 Jan 2020
Commented: Jakob B. Nielsen
on 21 Jan 2020
hello,
I am having two single row matrices with the values of Capacitance and Inductance respectively, and using these values I am making a third single row matrix of resonance frequencies. (for example if I have a two values of capacitance and two values of inductance then overall I would get 4 possible values of resonance frequency)
Now my aim is to plot a 3D plot using these three vectors however, I am getting the error "Vectors must be the same length"
because C and L vectors are [1*2] but F_resonance is [1*4] vector.
please guide.
Accepted Answer
Jakob B. Nielsen
on 21 Jan 2020
Edited: Jakob B. Nielsen
on 21 Jan 2020
The answer is in your error message. Plot3 plots a series of points (x,y,z) - the same would happen if you tried to plot(x,y) with x=[1 2 3] vs y=[1 2 3 4 5]. The dimensions just does not make sense.
What you are (probably) looking for is the surf or mesh functions. Have your F-resonance set up as a matrix instead of a vector, so that F_resonance(i,j) is a function of C(i) and L(j). In your example, you would turn F_resonance form a 1x4 vector into a 2x2 matrix. Then surf(C,L,F_resonance); will give you the surface plot.
2 Comments
Jakob B. Nielsen
on 21 Jan 2020
Hi Waqar,
Good to hear! Sometimes its all about finding the function you didnt know was there ;) If you can flag the answer as accepted, this thread will disappear from the unanswered questions section.
More Answers (0)
See Also
Categories
Find more on 2-D and 3-D Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!