Boxplot overlay - multiple variables
26 次查看(过去 30 天)
显示 更早的评论
Hi,
I am trying to boxplot quite a few variables on the same plot with no luck so far.
I have skin response data (numerical). I have two 'chooser' categories (characters/letters SS or ES): Self-selected(SS) VS Experimenter-selected(ES) songs. Within the 'chooser categories, I have two other variants (also characters): Arousing VS relaxing song.
The idea is to have boxplots of 'chooser' side by side showing the below:
SS Arousing + ES Arousing boxplots side by side & SS Relaxing + ES Relaxing boxplots side by side
Example similar to the boxplot I am trying to get with the above variables is attached.
I have tried a few alternatives (like holding on, creating aa grouping variable, etc) that I found on answers from the forum but my plot always comes up blank and I have had a different error with each method I tried so far.
Any ideas on how to produce such a plot would be greatly appreciated please. Thanks so much in advance.
0 个评论
回答(1 个)
Shivam
2024-11-5,13:53
Hi Rita,
Here is one example implementation which leverages the boxplot function to achieve the desired layout using skin response data:
skinResponse = randn(100, 1); % Replace with your actual skin response data
% Grouping variables
chooserCategory = [repmat({'SS'}, 50, 1); repmat({'ES'}, 50, 1)];
songType = [repmat({'Arousing'}, 25, 1); repmat({'Relaxing'}, 25, 1); ...
repmat({'Arousing'}, 25, 1); repmat({'Relaxing'}, 25, 1)];
% Combine grouping variables
group = strcat(chooserCategory, '-', songType);
figure;
boxplot(skinResponse, group, 'Labels', {'SS-Arousing', 'SS-Relaxing', 'ES-Arousing', 'ES-Relaxing'});
xlabel('Category');
ylabel('Skin Response');
Hope it helps.
3 个评论
Voss
2024-11-5,22:55
@Rita Campos Please post the code that worked for you, so that others may benefit from it.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!