Re: How to build a Tag Cloud Graph?
- To: mathgroup at smc.vnet.net
- Subject: [mg98651] Re: How to build a Tag Cloud Graph?
- From: m.r at inbox.ru
- Date: Wed, 15 Apr 2009 05:00:39 -0400 (EDT)
- References: <gruq3m$12t$1@smc.vnet.net>
LectorZ wrote:
> Dear experts,
>
> Let say, I have a simple list of sales numbers in different products.
> The first element of the sublist is a product, the second is a product
> group and the 3rd is the turnover. Like this one:
>
> sales={{Beef,Meat, 2343},{Milk,Drink, 234}, {Water,Drink, 234}, {Beer,
> Drink, 1546}, {Coke, Drink, 1223}, {Pork, Meat, 1223}}
>
> QUESTION:
> How to construct a Tag Cloud Plot in the way as it defined in
> wikipedia:
>
> "...Tags are usually single words and are typically listed
> alphabetically, and the importance of a tag is shown with font size or
> color..."
>
> For full details see:
> http://en.wikipedia.org/wiki/Tag_cloud
>
> It should be a frame with words in alphabetical order with different
> font color for different product group.
>
> Condition:
> For displaying products with huge and very small numbers a maximum and
> minimum font size should apply.
>
> Many thanks!
>
> Plotty
Here's a toy example:
len = Length@ CountryData[];
str = CountryData[#, "Name"]& /@ CountryData[];
sz = Rescale[Rescale[
CountryData[#, "Population"]& /@ CountryData[] // #^(1/3)&],
{0, 1}, {4, 48}];
col = RandomChoice[{Magenta, Darker@ Cyan}, len];
cloud = MapThread[Style[##, Bold]&, {str, sz, col}];
StringJoin@ Riffle[ToString[#, StandardForm]& /@ cloud, " "]
Maxim Rytin
m.r at inbox.ru