Hi i'm new to matlab and i have a question. for example if i have a vector with some ascii numbers, like
x=[65 65 67 68 68 68 68]
and i then want to draw a pie chart with the most frequent letter.
x=[65 65 67 68 68 68 68]
char(x)
y=unique(x)
counts=histc(x,y)
pie(counts,cellstr(num2str(counts(:))))
but my problem is that i want to have a legend witch will say what letter the different coulors represents, is that possible?

댓글 수: 1

the cyclist
the cyclist 2012년 1월 19일
Really an aside to your question, but you would probably want to use hist() rather than hist(), because you are specifying the bins, not the edges between the bins.
Also, I would recommend against a pie chart here. A bar chart will most likely allow the consumer to better judge the relative letter frequency.

댓글을 달려면 로그인하십시오.

 채택된 답변

Sean de Wolski
Sean de Wolski 2012년 1월 19일

0 개 추천

Like this?
x=[65 65 67 68 68 68 68];
y=unique(x);
counts=histc(x,y);
pie(counts,cellstr(char((y')))')
Note transpose for num2str()

댓글 수: 11

the cyclist
the cyclist 2012년 1월 19일
Guessing maybe you want char(y) in the last line:
pie(counts,cellstr(num2str(char(y)'))')
franz
franz 2012년 1월 19일
yes, exactly but I want to put up a legend that shows what letter the pie slices represents. like (68 would represent the letter D etc..)
Sean de Wolski
Sean de Wolski 2012년 1월 19일
pie(counts,cellstr(char((y')))')
franz
franz 2012년 1월 19일
So i still want the pie chart to say that it's 4x the number 68, but maybe have something in the corner of the chart that shows what the represent
franz
franz 2012년 1월 19일
pie(counts,cellstr(char((y')))')
that would work with this example , but what if i have slices that are very close to each other then i would like to tell them apart and know how many numbers the slice represent. that's why I would like to have something that's outside of the pie in the corner of something
franz
franz 2012년 1월 19일
or*
franz
franz 2012년 1월 19일
Do you understand what I mean?
Sean de Wolski
Sean de Wolski 2012년 1월 19일
like a legend? I'm liking cyclist's bar idea.
franz
franz 2012년 1월 19일
yes, a legend exactly :P
Sean de Wolski
Sean de Wolski 2012년 1월 19일
legend(cellstr(char((y')))')
franz
franz 2012년 1월 19일
Yes that worked thanks!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Pie Charts에 대해 자세히 알아보기

태그

질문:

2012년 1월 19일

Community Treasure Hunt

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

Start Hunting!

Translated by