How to display the actual values of my percentages on a pie chart
조회 수: 62 (최근 30일)
이전 댓글 표시
Hello everyone, this is a basic question for many of you and I would really appreciate if you can take the time and explain to me: How to display the actual values of my percentages on a pie chart and How to display percentage and labels on the pie chart.
TotalNumberOfCars = 75;
White = 34;
Black = 19;
Red = 12;
Silver = 2;
Grey = 3;
Other = 5;
% simple percentage
Per_White = White/ TotalNumberOfCars * 100
Per_Black = Black / TotalNumberOfCars * 100
Per_Red = Red / TotalNumberOfCars * 100
Per_Silver = Silver / TotalNumberOfCars * 100
Per_Grey = Grey / TotalNumberOfCars * 100
per_Other = Other/TotalNumberOfCars * 100
% The results 45.333, 25.333, 16, 2.666, 4
%I missed up somewhere
X = [34 19 12 2 3 5];
pie (X)
Labels = { 'White' , 'Black' , 'Red' , 'Silver' , 'Grey', 'Other'};
pie(X, Labels)
%I also tried to make the percentages as a vector
Y = [45.333, 25.333, 16, 2.666, 4];
pie(Y)
which produce mismatched percentages
댓글 수: 2
Walter Roberson
2021년 4월 20일
White = 34;
Black = 19;
Red = 12;
Silver = 2;
Grey = 3;
White + Black + Red + Silver + Grey
... Does not total 75. You need an "other" which is 75 minus the total.
채택된 답변
Scott MacKenzie
2021년 4월 21일
편집: Scott MacKenzie
2021년 4월 21일
Is the central issue combining a text label with the percentage? If so, perhaps this will work:
X = [34 19 12 2 3 5];
Labels = {'White', 'Black' , 'Red' , 'Silver' , 'Grey', 'Other'};
xPercent = X / sum(X) * 100;
newLabels = [];
for i=1:length(X)
newLabels = [newLabels {sprintf('%s (%.1f%%)', Labels{i}, xPercent(i))}];
end
pie(X, newLabels);
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Pie Charts에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!