how to plot a contour plot with excel data??

32 views (last 30 days)
sunitha
sunitha on 31 Mar 2021
Commented: sunitha on 31 Mar 2021
I have to plot a contour plot for excel data. I have two variables x and y , and the individual variables contain 50 data ponts
i defined the data for the variables x and y
contour(x,y) ...i have written code but it is showing the error .can someone tell me where i did mistake ?
  5 Comments
sunitha
sunitha on 31 Mar 2021
i have already calculated the output values and imported it in the excel .i have non linear equations from that i have calculated the variables
X=((bt*Qo*(1+R)*Xo)+(Y*a*V(i)*1000*J*bs))./(bt*((Qo*(1+R))-((V(i)*Y*k*N)/((Kn(i)*1000)+N))+(V(i)*kd)));
eqn1=(Qo*(1+R)*(No-N))-(V(i)*((a*J*1000)+((X*k*N)/((Kn(i)*1000)+N))));
eqn2=(sqrt((Lstar(i)^1.76)+(5.2*(Nstar-Nstar_min))-(Lstar(i)^0.88))/2.6)==jstar^0.88;
soln(i)=vpasolve([eqn1,eqn2],[N,J]);
i have these equations , now i varied the Kn parameter ,has 49 inputs corresponding to that i have calculated N, J variables.
now how i can plot contours for this non linear equation
??
sunitha
sunitha on 31 Mar 2021
should i vary the parameters two at a time and corresponding to that i have to plot this contours ??

Sign in to comment.

Answers (2)

LO
LO on 31 Mar 2021
Edited: LO on 31 Mar 2021
from the folder containing your excel file run
the error about Z may be related to the fact that contour is waiting for a missing variable. But a turnaround is to give to the function an array directly (2D in this case).
Please edit the path to your file (remove the square brackets and put your file location).
%% Import the data
[~, ~, raw] = xlsread('[path to your file here]\contour gr.xlsx','Sheet1');
raw = raw(2:end,:);
%% Create output variable
data = reshape([raw{:}],size(raw));
%% Create table
contourgr = table;
%% Allocate imported array to column variable names
contourgr.ksmgcm3 = data(:,1);
contourgr.SmgL = data(:,2);
%% Clear temporary variables
clearvars data raw;
contour(table2array(contourgr));

Star Strider
Star Strider on 31 Mar 2021
I cannot see how to do a contour plot of two vectors that do not represent gridded data, since that does not make sense.
However one option could be:
D = readmatrix('contour gr.xlsx');
x = D(:,1);
y = D(:,2);
figure
contourf(x*y.')
.

Categories

Find more on Contour 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!