Hello,
I´ve written the following loop
hold on
for i=2:1:48
x=File.data(8,i);
if x>10
pie(x)
end
end
My intention is to create a pie chart of the values in row 8 and columns 2-48 whith the condition thet the value in that cell is larger than 10 but i cant get it to work. Does anyone know what im doing wrong?
Thanks

回答 (2 件)

Adam Danz
Adam Danz 2019 年 8 月 9 日
編集済み: Adam Danz 2019 年 8 月 12 日

0 投票

From the documentation, "pie(X) draws a pie chart using the data in X. Each slice of the pie chart represents an element in X."
You need to provide all of the "slices" within the same input rather than one-by-one within a loop.
data = File.data(8,2:48); % <--- a vector of all slices
pie(data(data>10)) % <--- only provide slices >10
In your loop, the pie chart is being overwritten upon each iteration and only shows 1 "slice" at a time.
Star Strider
Star Strider 2019 年 8 月 9 日

0 投票

I am not certain what you want, however the loop is likely not necessary.
Try this:
x = File.data(8, 2:48);
figure
pie(x(x>10))
axis equal

カテゴリ

製品

リリース

R2017b

質問済み:

2019 年 8 月 9 日

編集済み:

2019 年 8 月 12 日

Community Treasure Hunt

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

Start Hunting!

Translated by