Plot 4d Using meshgrid

12 visualizzazioni (ultimi 30 giorni)
Leonardo Barbosa Torres dos Santos
Commentato: alok dhaundiyal il 18 Nov 2020
Dear, could someone help me please?
I have a file with 4 column.
I would like plot a graphic 4D, where the axis x, y and z are the column from 1 to 3, respectively, and the color code is the column 4.
I built a graphic, is attached, but I would like make a surface. I read it is possible using mesh comand. But I could not.
Thank you advanced

Risposte (2)

Soham Chakraborty
Soham Chakraborty il 21 Ott 2019
Hi,
As per my understanding you are able to create a 3-D plot. However, you need guidance in representating an additional column of data using color codes. The above requirement can be sovled using 'mesh' or 'surf' command (for creating mesh or surface plot).
The following example could help you with your requirement:
[X,Y] = meshgrid(-8:.5:8);
Z = sin(X) + cos(Y);
C = X.*Y;
mesh(X,Y,Z,C);
or
[X,Y] = meshgrid(-8:.5:8);
Z = sin(X) + cos(Y);
C = X.*Y;
surf(X,Y,Z,C);

Leonardo Barbosa Torres dos Santos
Modificato: Leonardo Barbosa Torres dos Santos il 24 Ott 2019
Dear, I tried use your sugestion. But the matlab show me an error:
"Error using mesh (line 71)
Z must be a matrix, not a scalar or vector."
The z-axis is the third column of my file. I believed that it was a matrix with n lines and 1 column and not a vector or scalar.
Below I am puting my code to you see. Could you help me ? Because I don't know how solve it.
clc,clear all,format long
point = load ('general_resultosA.dat') ; % load data
long = point(:,1); % longitude data
lat = point(:,2); % latitude data
rural = point(:,3); % percent rural data
fatalities = point(:,4); % fatalities data
xlabel('\Phi [deg]')
ylabel('\mu [adim]')
zlabel('k')
xlim([0 75])
ylim([0.5 0.9])
zlim([1 9])
mesh(long,lat,rural,fatalities);

Community Treasure Hunt

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

Start Hunting!

Translated by