plot each cast for each year using findgroups and splitapply

5 vues (au cours des 30 derniers jours)
akk
akk le 16 Oct 2020
Commenté : Ameer Hamza le 20 Oct 2020
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.

Réponses (1)

Ameer Hamza
Ameer Hamza le 17 Oct 2020
You can use multiple variables to create groups using findgroups()
groups = findgroups(CASTYEAR, CASTID);
  2 commentaires
akk
akk le 19 Oct 2020
Thank you. If I did:
[G,ID]=findgroups(CASTYEAR,CASTID)
how would I then plot the temp,depth associated with each group?
Ameer Hamza
Ameer Hamza le 20 Oct 2020
You can still use the line
Y=splitapply(@plot,TEMP_DEGC,DEPTH_M,group);

Connectez-vous pour commenter.

Catégories

En savoir plus sur MATLAB dans Help Center et File Exchange

Produits


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by