Converting 2D plot into a 3D with 3rd axis being steps.
1 回表示 (過去 30 日間)
古いコメントを表示
Suhas Nuggehalli Sampathkumar
2020 年 6 月 11 日
コメント済み: Suhas Nuggehalli Sampathkumar
2020 年 6 月 13 日
Hi.
I have a for loop, which loads data from set of an excel files as temperory table with two columns and plots a 2d plot. Using the 'hold on; option, i'm able to get a 2D graph which includes data from all the files. The excel file is data recorded from experiment to test degradation. Each excel file represents evolution of the peaks. I would like to have a 3D plot with constant depth - as a funtion of steps (which I can include as a vector as my steps are limited to 7). So basically it's like converting a 2D plot to 3D to avoid cluttering of information. An example that can be taken is that of 'asin(bx)' funtion with changing values of a and b. The only problem i'm facing is that these values are loaded as vectors and not matrices. Could anyone suggest me a simple way to use 3 vectors of which 2 vectors are of same length (approx 300 paired data points), and the third vector of different length (steps - [1 2 3 4 5 6 7]) to be plotted in a 3D graph?
0 件のコメント
回答 (1 件)
Ameer Hamza
2020 年 6 月 11 日
Run this example
x = linspace(0, 2*pi, 1000);
B = [1 2 3 4 5];
ax = axes();
hold(ax);
view(ax, 3)
grid on;
for i=1:numel(B)
b = repmat(B(i), size(x));
y = sin(b.*x);
plot3(x, b, y);
end
xlabel('x');
ylabel('b');
zlabel('y');
5 件のコメント
Ameer Hamza
2020 年 6 月 13 日
How are you creating the figure is not clear. Can you share the .fig file for this surface?
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

