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.

답변 (1개)

Ameer Hamza
Ameer Hamza 2020년 10월 17일
You can use multiple variables to create groups using findgroups()
groups = findgroups(CASTYEAR, CASTID);

댓글 수: 2

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);

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

카테고리

도움말 센터File Exchange에서 Creating, Deleting, and Querying Graphics Objects에 대해 자세히 알아보기

제품

릴리스

R2018b

질문:

akk
2020년 10월 16일

댓글:

2020년 10월 20일

Community Treasure Hunt

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

Start Hunting!

Translated by