[Scilab-users] Stacked 2D plot in 3D

Rafael Guerra jrafaelbguerra at hotmail.com
Sat Feb 3 19:19:20 CET 2018


Hi Claus,

On the basis of early code provided, I think you just need to transpose the matrix inputs to param3d1 in order to have the parametric curves plotted at fixed angles along <> frequencies. See below:


// START OF CODE
frequencies = [201 811 3183 12862 25113]; // Hz; row vector
angles = [0 30 60 90]; // off-axis angles, degrees
m_norm = [ 1.0   0.9945629   0.9643959   0.8756431;
           1.0   0.9914442   1.0244046   0.9414654;
           1.0   0.9910279   0.9670986   0.8932413;
           1.0   0.9339808   0.8378147   0.7067978;
           1.0   0.8985782   0.7536068   0.5074218];
[nf na] = size(m_norm)
A = (angles .*. ones(nf,1))';
F = (frequencies .*. ones(na,1));
M = 20*log10(m_norm'); // dB scale
clf();
sp = gca(); // Get current axis handle
param3d1(F',A',M',alpha=50,theta=-110,flag=[2,4]);
e = gce() //the handle on the 3D polyline
e.children.foreground = color('dark blue');
e.children.thickness = 2;
xgrid;
sp.log_flags = "lnn"; // x-axis log scale (frequencies)
sp.cube_scaling = "on";
xlabel("Frequency (Hz)");
ylabel("Angle (deg)");
zlabel("Mag (dB)");
// END OF CODE


Regards,
Rafael
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.scilab.org/pipermail/users/attachments/20180203/2a8dbbed/attachment.htm>


More information about the users mailing list