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