Plotting fixed X data against multiple Y data in matlab

조회 수: 16 (최근 30일)
Richard
Richard 2022년 12월 22일
댓글: Richard 2022년 12월 23일
Hello I need help with this.I am new to matlab.
I have an excel file with X DATA in first column and 44 Y DATA in adjecent columns and the average of all the ys in a last column.
I want to make a scatter plot for the fixed X data against all the 44 y data and also make a line graph of the X against the average of the Y all on a single graph.

채택된 답변

Cameron
Cameron 2022년 12월 22일
편집: Cameron 2022년 12월 23일
Thank you for the clarification. There may be too many plots for the data to look nice, but the way I would do what you have described is as follows:
[file,path] = uigetfile('*.*'); %select the file
cd(path) %change directories
fileData = readmatrix(file); %read the file
xdata = fileData(:,1); %value for data in the first column. I assumed there were 44 data points for X
hold on %hold onto the plot so it doesn't overwrite it
for col = 2:size(fileData,2) - 1 %loop through all columns of data minus the y average
ydata = fileData(:,col); %value for data in the looped column.
plot(xdata,ydata,'o') %plot the first and looped column
end
y_avg = fileData(:,end); %last column of data
plot(xdata,y_avg,'-') %plot the x vs. the average y data
hold off %turn the hold off
  댓글 수: 3
Cameron
Cameron 2022년 12월 23일
I've updated it to fit your requirements. Try it now.
Richard
Richard 2022년 12월 23일
This one worked perfectly. Thank you very much.

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Cameron
Cameron 2022년 12월 22일
[file,path] = uigetfile('*.*'); %select the file
cd(path) %change directories
fileData = readmatrix(file); %read the file
xdata = fileData(:,1); %value for data in the first column. I assumed there were 44 data points for X
ydata = fileData(:,2); %value for data in the second column.
avgy = mean(ydata); %average of all the y data points
plot(xdata,ydata,'o') %plot the first and second column
hold on %hold onto the plot so it doesn't overwrite it
plot(xdata,ones(length(xdata),1)*avgy,'-') %plot the x vs. the average y data
hold off %turn the hold off
  댓글 수: 1
Richard
Richard 2022년 12월 22일
Thank you. This made the plot but not all the plots. Maybe my question wasn't clear.
I have say 250 data points in first column (x) and 250 data points in adjacent 44 columns(y) and 250 data points in the 46th column (y_average). I want to do a scatter plot for the X and the ys, and a line plot for the x and y_average.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 App Building에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by