plot each cast for each year using findgroups and splitapply

Hello,
I have a dataset with temperature, depth, castID and year. For each year, there are multiple casts, and the castID is associated with multiple temperature and depth readings. I would like to group the data by year, then plot each individual cast in that year using a specific color so that each cast associated with e.g., yr 2010 is green.
group_yr=findgroups(CASTYEAR);
figure;hold on;
Y=splitapply(@plot,TEMP_DEGC,DEPTH_M,group);
The issue is that matlab assumes all the casts in 2010 is a continuous dataset and so the plot lines are continuous as well, rather than seperate for each castID. I think I should also apply: group_ID=findgroups(CASTID);
But Im not sure how to plot according to group_ID and group_yr, and when I use:
Y=splitapply(@plot,TEMP_DEGC,DEPTH_M,group_ID(group_yr==1);
it does not work.

Answers (1)

You can use multiple variables to create groups using findgroups()
groups = findgroups(CASTYEAR, CASTID);

2 Comments

Thank you. If I did:
[G,ID]=findgroups(CASTYEAR,CASTID)
how would I then plot the temp,depth associated with each group?
You can still use the line
Y=splitapply(@plot,TEMP_DEGC,DEPTH_M,group);

Sign in to comment.

Categories

Find more on Creating, Deleting, and Querying Graphics Objects in Help Center and File Exchange

Products

Release

R2018b

Asked:

akk
on 16 Oct 2020

Commented:

on 20 Oct 2020

Community Treasure Hunt

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

Start Hunting!