示例1:使用表数据创建气泡云
%创建一个包含三个变量的表。
%例如,创建一个表,显示美国10个州中贴错标签的万圣节服装的数量。
%在售出的10000套公主套装中,有1000套误贴怪异的怪物标签。
n = [58 115 81 252 180 124 40 80 50 20]'; %贴错标签的数量
loc = ["NJ" "NY" "MA" "OH" "NH" "ME" "CT" "PA" "RI" "VT"]'; %州
plant = ["Plant A" "Plant A" "Plant A" "Plant A" "Plant A" "Plant A" "Plant A" "Plant B" "Plant B" "Plant B"]'; %生产的工厂
tbl = table(n,loc,plant,'VariableNames',["Mislabeled" "State" "Manufacturing Plant"])
% tbl =
%
% 10×3 table
%
% Mislabeled State Manufacturing Plant
% __________ _____ ___________________
%
% 58 "NJ" "Plant A"
% 115 "NY" "Plant A"
% 81 "MA" "Plant A"
% 252 "OH" "Plant A"
% 180 "NH" "Plant A"
% 124 "ME" "Plant A"
% 40 "CT" "Plant A"
% 80 "PA" "Plant B"
% 50 "RI" "Plant B"
% 20 "VT" "Plant B"
figure;
%创建一个气泡云,按州可视化贴错标签的服装。
subplot(2,1,1);
bubblecloud(tbl,"Mislabeled","State");
%通过指定groupvar参量将气泡分成多个组。
%在本例中,组位于名为"Manufacturing Plant"的变量中。
subplot(2,1,2);
bubblecloud(tbl,"Mislabeled","State","Manufacturing Plant");
示例2:用向量数据创建气泡云
%将n定义为气泡大小的向量,用最受欢迎的冰淇淋口味调查所得的数字表示气泡大小。
%将flavs定义为一个包含口味名称的字符串向量。
%然后创建一个气泡云,显示最受欢迎的冰淇淋口味的分布情况。
n = [58 115 81 252 200 224 70 120 140];
flavs = ["Rum" "Pumpkin" "Mint" "Vanilla" "Chocolate" "Strawberry" "Twist" "Coffee" "Cookie"];
figure;
subplot(2,1,1);
bubblecloud(n,flavs);
%将ages定义为包含偏好每种口味的年龄组的分类向量。
%通过调用reordercats函数指定类别的顺序。
%然后用按年龄分组的气泡创建一个新气泡云,并将BubbleCloud对象返回为b。
%当您指定组数据时,默认情况下图会显示图例。通过设置b的LegendTitle属性,为图例添加标题。
ages = categorical(["40-90+" "5-15" "16-39" "40-90+" "5-15" "16-39" "5-15" "16-39" "40-90+"]);
ages = reordercats(ages,["5-15" "16-39" "40-90+"]);
subplot(2,1,2);
b = bubblecloud(n,flavs,ages);
b.LegendTitle = 'Age Range';
示例3:用气泡云可视化分类数据
%将c定义为分类数组。
%使用histounts函数对分类数据进行分bin,并返回气泡大小和标签。
%然后将气泡大小和标签传递给bubblecloud函数。
c = categorical(["Pumpkin" "Princess" "Princess" "Princess" "Spooky Monster" "Spooky Monster" "Spooky Monster" "Spooky Monster" "Spooky Monster"]);
[sz,labels] = histcounts(c);
% sz =
%
% 3 1 5
%
%
% labels =
%
% 1×3 cell 数组
%
% {'Princess'} {'Pumpkin'} {'Spooky Monster'}
bubblecloud(sz,labels);