<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>tag:blogger.com,1999:blog-1078898499337496912.post1536938175853697257..comments</id><updated>2012-02-07T18:46:14.261-08:00</updated><category term='PHP'/><category term='Guest Author'/><category term='jQuery'/><category term='jTruncate'/><category term='Hibernate'/><category term='Kwicks'/><category term='Misc'/><category term='Asciible'/><category term='JavaScript'/><category term='Blogger'/><category term='Java'/><category term='Algorithms'/><category term='Politics'/><category term='Photoshop'/><title type='text'>Comments on jMar's Blog: Efficient Tag Cloud Algorithm</title><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.jeremymartin.name/feeds/1536938175853697257/comments/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html'/><author><name>Jeremy Martin</name><uri>http://www.blogger.com/profile/03514319709844297772</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>20</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-3912861896842518825</id><published>2012-02-07T18:46:14.261-08:00</published><updated>2012-02-07T18:46:14.261-08:00</updated><title type='text'>Thanks! I have been trying to come up with a good ...</title><content type='html'>Thanks! I have been trying to come up with a good way to do this for a long time.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/3912861896842518825'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/3912861896842518825'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1328669174261#c3912861896842518825' title=''/><author><name>Jonas</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-947521179'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-6406306628824919349</id><published>2012-01-14T22:37:49.848-08:00</published><updated>2012-01-14T22:37:49.848-08:00</updated><title type='text'>great demonstration... can i use this to my premiu...</title><content type='html'>great demonstration... can i use this to my premium template?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/6406306628824919349'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/6406306628824919349'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1326609469848#c6406306628824919349' title=''/><author><name>Joseph Buarao</name><uri>http://www.josephbuarao.com/</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-920213030'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-3284518945351982256</id><published>2011-05-26T10:47:14.354-07:00</published><updated>2011-05-26T10:47:14.354-07:00</updated><title type='text'>Nice Plug-in and demonstration!</title><content type='html'>Nice Plug-in and demonstration!</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/3284518945351982256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/3284518945351982256'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1306432034354#c3284518945351982256' title=''/><author><name>nodejs</name><uri>http://nodejstutorials.blogspot.com</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-20572228'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-5228938574966173413</id><published>2011-05-06T03:12:30.972-07:00</published><updated>2011-05-06T03:12:30.972-07:00</updated><title type='text'>big think it was exactly what I searched, with a m...</title><content type='html'>big think it was exactly what I searched, with a min and max!&lt;br /&gt;&lt;br /&gt;I did it in PHP but will perhaps look after to make in JQuery because it&amp;#39;s display work&lt;br /&gt;&lt;br /&gt;think again!</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/5228938574966173413'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/5228938574966173413'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1304676750972#c5228938574966173413' title=''/><author><name>Anonymous</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1263829293'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-9117487811153867993</id><published>2008-10-30T14:39:00.000-07:00</published><updated>2008-10-30T14:39:00.000-07:00</updated><title type='text'>Whoops...&lt;br&gt;&lt;br&gt;make that:&lt;br&gt;&lt;br&gt;var retrieveCou...</title><content type='html'>Whoops...&lt;BR/&gt;&lt;BR/&gt;make that:&lt;BR/&gt;&lt;BR/&gt;var retrieveCount = options['retrieveCount'] || function(element){return element.getProperty('count').toInt()};&lt;BR/&gt;&lt;BR/&gt;Keep forgetting that the return statement is required in JavaScript. Lazy!</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/9117487811153867993'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/9117487811153867993'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1225402740000#c9117487811153867993' title=''/><author><name>toothygoose</name><uri>http://toothygoose.pip.verisignlabs.com/</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/openid16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-827071626'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-7068537597508156733</id><published>2008-10-30T04:42:00.000-07:00</published><updated>2008-10-30T04:42:00.000-07:00</updated><title type='text'>Here is a mootools/functional programming variant....</title><content type='html'>Here is a mootools/functional programming variant. Tidies away all the variables into its own namespace:&lt;BR/&gt;&lt;BR/&gt;&lt;BR/&gt;var TagCloud = {&lt;BR/&gt;      apply: function(selector, options) {&lt;BR/&gt;        options = options || {};&lt;BR/&gt;        &lt;BR/&gt;        var maxPercent = options[&amp;#39;maxPercent&amp;#39;] || 150;&lt;BR/&gt;        var minPercent = options[&amp;#39;minPercent&amp;#39;] || 100;&lt;BR/&gt;        var retrieveCount = options[&amp;#39;retrieveCount&amp;#39;] || function(element){element.getAttribute(&amp;#39;count&amp;#39;).toInt()};&lt;BR/&gt;        var apply = options[&amp;#39;apply&amp;#39;] || function(element, size){element.setStyle(&amp;#39;font-size&amp;#39;, size + &amp;#39;%&amp;#39;)};&lt;BR/&gt;        &lt;BR/&gt;        var max = null;&lt;BR/&gt;        var min = null;&lt;BR/&gt;        &lt;BR/&gt;        var tagElements = $$(selector);&lt;BR/&gt;        &lt;BR/&gt;        tagElements.each(function(element)&lt;BR/&gt;        {&lt;BR/&gt;          count = retrieveCount(element);&lt;BR/&gt;          max = (max == null || count &amp;gt; max ? count : max);  &lt;BR/&gt;          min = (min == null || min &amp;gt; count ? count : min);&lt;BR/&gt;        });&lt;BR/&gt;        &lt;BR/&gt;        var multiplier = (maxPercent-minPercent)/(max-min);&lt;BR/&gt;        &lt;BR/&gt;        tagElements.each(function(element)&lt;BR/&gt;        {&lt;BR/&gt;          count = retrieveCount(count);&lt;BR/&gt;          size = (minPercent + (count - min) * multiplier);&lt;BR/&gt;          apply(element, size);&lt;BR/&gt;        });&lt;BR/&gt;      }&lt;BR/&gt;    };&lt;BR/&gt;    &lt;BR/&gt;    TagCloud.apply(&amp;#39;ul#tags &amp;gt; li&amp;#39;);</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/7068537597508156733'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/7068537597508156733'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1225366920000#c7068537597508156733' title=''/><author><name>toothygoose</name><uri>http://toothygoose.pip.verisignlabs.com/</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/openid16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-827071626'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-908672186983868447</id><published>2008-09-27T00:48:00.000-07:00</published><updated>2008-09-27T00:48:00.000-07:00</updated><title type='text'>I liked the idea, but I have a large set of data, ...</title><content type='html'>I liked the idea, but I have a large set of data, the distribution is such that I have a lot of rare tags and a few very common ones - with hardly anything in between - I'm looking at product sales from a large inventory.&lt;BR/&gt;&lt;BR/&gt;Some products sell 1 unit, others 50, 100, 500, 1000, etc... but one product sells 250,000 which means your algorithm gives me a few enormous tag and maps everything else down to the mininium size.&lt;BR/&gt;&lt;BR/&gt;I need to be able to pull out the detail at both ends of the scale.&lt;BR/&gt;&lt;BR/&gt;Using Log10(Count) worked really well and produces really compelling sales charts.&lt;BR/&gt;&lt;BR/&gt;Thanks for the idea - 10 minute metrics - Mwhahahaha!</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/908672186983868447'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/908672186983868447'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1222501680000#c908672186983868447' title=''/><author><name>webbod</name><uri>http://www.blogger.com/profile/02506136914149711420</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_isVqNM8L5OI/R7ACSYbnGSI/AAAAAAAAAAM/gHG-VK_mrG0/S220/n550282832_380.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1350135444'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-5185376869465345468</id><published>2008-09-18T23:50:00.000-07:00</published><updated>2008-09-18T23:50:00.000-07:00</updated><title type='text'>Just to think for. It could not be this vast effor...</title><content type='html'>Just to think for. It could not be this vast effort to implement it this way.&lt;A HREF="http://we-r-blogs.com/26/sanny/12717/Up+to+reason+in+life+.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://sannylikefriends.blogs.videoproductionhelp.com/2008/09/16/there-are-six-words-in-lif/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.toutoublog.com/sanny/94470/Three+people%26%2339%3Bs+philosophy+of+life+.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://blog.flat4ever.com/sanny/4642/Interspersing+life+happily+.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.beklo.com/sanny/5966/The+thought+is+a+commanding+officer+in+your+life+.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://sanny86.pimpblog.nl/27044/There+is+no+road+of+retrogression+in+life.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://sanny.gaia.com/blog/2008/9/set_up_happiness_life" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.chevalblog.com/sanny/140131/The+obligation+is+a+bounden+duty+of+life+.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://enjoyurlife.blog.com/3882674/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://beautiful.20six.de/beautiful/art/559254/There-is-no-impasse-in-life" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://rainkfc.iblog.co.th/13970/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.dzblog.net/sanny/9644/Defeat+a+force+with+a+tenderness+.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://kfcsanny.photo-weblog.com/673/Do+to+a+colleague+liked.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://terminalsblocks.wordpress.com/2008/09/18/the-healthy-competition-psychology/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://kfcdepart.blogownia.pl/37545/The+good+interpersonal+relationships.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://sannykfc.blogsome.com/2008/09/18/complain-higher-authorities/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://e1blog.com/sannybeautiful/4142/One+yuan+is+borrowed+or+lend+money.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://sanny.somebodiesblog.com/75/Sad+ormosia.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://moonkfc.digiblogz.com/194/A+gleam+of+a+thousand+pieces+of+gold.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://enjoyurlife.blogstream.com/v1/pid/340548.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.iseekblog.com/sanny/55358/Guide+the+wolf+to+enter+%26quot%3B++The+room+%26quot%3B+.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://sannyseo.tradea.org/794/Newton%26%23039%3Bs+sincere+advice.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.freeblog.bz/sanny/14/Offer+great+.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://myblog.tretoday.net/kfcdepaart/135/Saved+by+the+game.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://sanny.buzznet.com/user/journal/3033711/?isnew=1&amp;error=The+journal+was+saved!" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.ublogs.ro/sannymakefriends/17381/The+paper+is+a+matchmaker.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.bujinblog.com/sannylikefriends/36/The+blind+person+is+not+blind+.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.iblogme.com/moonkfc/19139/The+correct+judgement.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.tripslog.com/travel-blogs/moonkfc/583-scenery-under-the-foot.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://moonkfc.desiblogz.com/4927/Light+of+the+distant+place.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.xeeks.com/moonkfc/3933/Any+time+will+keep+the+sober+head+.html" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://we-r-blogs.com/26/sanny/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://en.xihalife.com/b/sanny86/1646" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://sannylikefriends.blogs.videoproductionhelp.com/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.toutoublog.com/sanny/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://blog.flat4ever.com/sanny/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.beklo.com/sanny/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://sanny86.pimpblog.nl/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://sanny.gaia.com/blog" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.chevalblog.com/sanny" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://enjoyurlife.blog.com/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://beautiful.20six.de/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://rainkfc.iblog.co.th/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.dzblog.net/sanny/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://kfcsanny.photo-weblog.com/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://terminalsblocks.wordpress.com/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://kfcdepart.blogownia.pl/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://sannykfc.blogsome.com/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://e1blog.com/sannybeautiful/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://sanny.somebodiesblog.com/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://moonkfc.digiblogz.com/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://enjoyurlife.blogstream.com/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.iseekblog.com/sanny/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://sannyseo.tradea.org/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.freeblog.bz/sanny" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://myblog.tretoday.net/kfcdepaart/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://sanny.buzznet.com/user/journal/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.ublogs.ro/sannymakefriends/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.bujinblog.com/sannylikefriends" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.iblogme.com/moonkfc/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.tripslog.com/travel-blogs/moonkfc/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://moonkfc.desiblogz.com/" REL="nofollow"&gt;&lt;/A&gt;&lt;A HREF="http://www.xeeks.com/moonkfc/" REL="nofollow"&gt;&lt;/A&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/5185376869465345468'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/5185376869465345468'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1221807000000#c5185376869465345468' title=''/><author><name>terminals-blocks</name><uri>http://www.blogger.com/profile/08325857097722664032</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1339234470'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-505734835098648421</id><published>2008-09-12T09:54:00.000-07:00</published><updated>2008-09-12T09:54:00.000-07:00</updated><title type='text'>Thank you very much for the article. It took me ab...</title><content type='html'>Thank you very much for the article. It took me about 25 mins to apply it, not on the client side but server side using php. Your article is the simplest tutorial that I have found on the net. Special thanks go to Ken, as I used his refined version.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/505734835098648421'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/505734835098648421'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1221238440000#c505734835098648421' title=''/><author><name>ege</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-767583445'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-1222001811284577612</id><published>2008-07-10T16:10:00.000-07:00</published><updated>2008-07-10T16:10:00.000-07:00</updated><title type='text'>This is great. Playing with it now. As for markup,...</title><content type='html'>This is great. Playing with it now. As for markup, maybe something simple like class="cloudable" rel="rank"?&lt;BR/&gt;&lt;BR/&gt;I Personally prefer the rank/weight indicator to be in an attrib.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/1222001811284577612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/1222001811284577612'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1215731400000#c1222001811284577612' title=''/><author><name>rapin</name><uri>http://rapin.myopenid.com/</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/openid16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-2147008212'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-8730185906696097697</id><published>2008-06-26T09:22:00.000-07:00</published><updated>2008-06-26T09:22:00.000-07:00</updated><title type='text'>@Jacob&lt;br&gt;Uh... so it does.  I swear, this post is...</title><content type='html'>@Jacob&lt;BR/&gt;Uh... so it does.  I swear, this post is taking me to school... Thanks for pointing that out!</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/8730185906696097697'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/8730185906696097697'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1214497320000#c8730185906696097697' title=''/><author><name>Jeremy Martin</name><uri>http://www.blogger.com/profile/03514319709844297772</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-614393751'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-6283098388030967457</id><published>2008-06-26T09:10:00.000-07:00</published><updated>2008-06-26T09:10:00.000-07:00</updated><title type='text'>Your algorithm has a problem if all of the tags ha...</title><content type='html'>Your algorithm has a problem if all of the tags have exactly the same number of occurrences.  In this case max=min and you would get a divide by zero error.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/6283098388030967457'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/6283098388030967457'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1214496600000#c6283098388030967457' title=''/><author><name>jacob</name><uri>http://www.blogger.com/profile/07109445810389711476</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='33' height='20' src='http://jacobbrunson.com/files/2007/11/picture.thumbnail.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1135014067'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-3720012329719015582</id><published>2008-05-19T07:28:00.000-07:00</published><updated>2008-05-19T07:28:00.000-07:00</updated><title type='text'>@Ken&lt;br&gt;Thanks for that very thorough explanation!...</title><content type='html'>@Ken&lt;BR/&gt;Thanks for that very thorough explanation!  I guess I was too hasty in my response to the 3/21 comment.  Didn't we learn that stuff in like 5th grade or something...?  I'll add this to my growing list of updates - too many smart people correcting me, not enough time...</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/3720012329719015582'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/3720012329719015582'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1211207280000#c3720012329719015582' title=''/><author><name>Jeremy Martin</name><uri>http://www.blogger.com/profile/03514319709844297772</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-614393751'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-601359330090826774</id><published>2008-05-19T07:20:00.000-07:00</published><updated>2008-05-19T07:20:00.000-07:00</updated><title type='text'>Jeremy--&lt;br&gt;&lt;br&gt;Thanks for this post. I had the sa...</title><content type='html'>Jeremy--&lt;BR/&gt;&lt;BR/&gt;Thanks for this post. I had the same thought as the March 21 anonymous regarding the ((max-(max-(count-min))). You said efficiency was a concern, so here's my two bits on optimzing the size calculation in the loop:&lt;BR/&gt;&lt;BR/&gt;Just distribute the minuses out to the terms in the parenthesis, and you'll see it works out, even though "count" changes on each iteration. Here it is step-by-step (perhaps a little more verbose than needed).&lt;BR/&gt;&lt;BR/&gt;a) ((max - (max - (count - min)))&lt;BR/&gt;b) ((max - (max - count + min))&lt;BR/&gt;c) (max - max + count - min)&lt;BR/&gt;&lt;BR/&gt;"C" will give you the exact same result as "A", and since the "max-max" cancels out, you can further simiplify it to be:&lt;BR/&gt;&lt;BR/&gt;d) count - min&lt;BR/&gt;&lt;BR/&gt;That leaves your code as the following:&lt;BR/&gt;&lt;B&gt;&lt;BR/&gt;var multiplier = (maxPercent-minPercent)/(max-min);&lt;BR/&gt;var size = minPercent + (count-min)*multiplier;&lt;BR/&gt;&lt;/B&gt;&lt;BR/&gt;The nice thing about the above code is that math-minded folks will instantly recognize you're doing a linear interpolation of "count" between two numbers ("maxPercent" and "minPercent"). That was a bit obscured in the original code. &lt;BR/&gt;&lt;BR/&gt;With a bit of explanation to someone of what interpolation is, you can even easily visualize in your minds-eye what is happening in the above code.&lt;BR/&gt;&lt;BR/&gt;This is the easiest to understand version of the code, but you can introduce another variable optimize the loop further:&lt;BR/&gt;&lt;BR/&gt;a) var size = minPercent + (count-min)*multiplier;&lt;BR/&gt;b) var size = minPercent + count*multiplier - min*multiplier;&lt;BR/&gt;c) var size = (minPercent - min*multiplier) + count*multiplier;&lt;BR/&gt;d) var offset = minPercent - min*multiplier; var size = offset + count*multiplier;&lt;BR/&gt;&lt;BR/&gt;with "offset" being calculated outside of the loop (note that no terms in "offset" use "count" so this is safe to do). This means that inside of the loop we have 1 multiplication and 1 addition, whereas it used to be 4 additions/subtractions and 1 multiplication. Notice that the only things we're pulling out of the loop are the constants. Anything involving "count" stays in the loop.&lt;BR/&gt;&lt;BR/&gt;This leaves your code as the following&lt;BR/&gt;&lt;B&gt;&lt;BR/&gt;var multiplier = (maxPercent-minPercent)/(max-min);&lt;BR/&gt;var offset = minPercent - min*multiplier;&lt;BR/&gt;var size = count*multiplier + offset;&lt;BR/&gt;&lt;/B&gt;&lt;BR/&gt;&lt;BR/&gt;A little harder to visualize what's going on in this version, but it is fine with a comment.&lt;BR/&gt;&lt;BR/&gt;Try this; it will work. What your algorithm is basically doing is a linear interpolation.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/601359330090826774'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/601359330090826774'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1211206800000#c601359330090826774' title=''/><author><name>Ken</name><uri>http://www.blogger.com/profile/04661281109572915165</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1294184306'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-5873738388241659968</id><published>2008-03-30T16:57:00.000-07:00</published><updated>2008-03-30T16:57:00.000-07:00</updated><title type='text'>I would be very happy, if you could add an alterna...</title><content type='html'>I would be very happy, if you could add an alternative routine to get the data for the cloud.&lt;BR/&gt;&lt;BR/&gt;Like a text-file or data from JSON. The reason is, that not all people who use jQuery use it for HTML ;-) &lt;BR/&gt;Personally I use it for XUL (Firefox extension, etc.) as well. &lt;BR/&gt;&lt;BR/&gt;Right now I am trying to create a GTD add-on for an application based on Mozilla and thus I am in need for a tag-clound jQuery plugin, that reads the tags from a database and then creates the tag-cloud from it.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/5873738388241659968'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/5873738388241659968'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1206921420000#c5873738388241659968' title=''/><author><name>Anonymous</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-2051195514'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-5223135340493862562</id><published>2008-03-25T09:56:00.000-07:00</published><updated>2008-03-25T09:56:00.000-07:00</updated><title type='text'>@Anonymous&lt;br&gt;Since count is updated during each i...</title><content type='html'>@Anonymous&lt;BR/&gt;Since count is updated during each iteration, I can't extract any expressions that contain count outside of the loop.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/5223135340493862562'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/5223135340493862562'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1206464160000#c5223135340493862562' title=''/><author><name>Jeremy Martin</name><uri>http://www.blogger.com/profile/03514319709844297772</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-614393751'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-2322670463693797679</id><published>2008-03-21T16:31:00.000-07:00</published><updated>2008-03-21T16:31:00.000-07:00</updated><title type='text'>While you're optimising your loop why don't you si...</title><content type='html'>While you're optimising your loop why don't you simplify&lt;BR/&gt;((max-(max-(count-min)))&lt;BR/&gt;&lt;BR/&gt;to just&lt;BR/&gt;&lt;BR/&gt;(count - min)?&lt;BR/&gt;&lt;BR/&gt;Or do you have a typo in there somewhere?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/2322670463693797679'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/2322670463693797679'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1206142260000#c2322670463693797679' title=''/><author><name>Anonymous</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1420318154'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-5485818484338314730</id><published>2008-03-19T05:41:00.000-07:00</published><updated>2008-03-19T05:41:00.000-07:00</updated><title type='text'>I agree that it would be ideal to let the user det...</title><content type='html'>I agree that it would be ideal to let the user determine the markup - just not sure yet on how to let them specify that in a flexible way...</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/5485818484338314730'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/5485818484338314730'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1205930460000#c5485818484338314730' title=''/><author><name>Jeremy Martin</name><uri>http://www.blogger.com/profile/03514319709844297772</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-614393751'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-710889095172702567</id><published>2008-03-19T03:04:00.000-07:00</published><updated>2008-03-19T03:04:00.000-07:00</updated><title type='text'>Why give it to the plugin users choice and let him...</title><content type='html'>Why give it to the plugin users choice and let him define via plugin constructor the way he wants his tag to be.&lt;BR/&gt;&lt;BR/&gt;Just to think for. It could not be this vast effort to implement it this way.&lt;BR/&gt;&lt;BR/&gt;Best regards,&lt;BR/&gt;Skyborg</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/710889095172702567'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/710889095172702567'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1205921040000#c710889095172702567' title=''/><author><name>Anonymous</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-120421080'/></entry><entry><id>tag:blogger.com,1999:blog-1078898499337496912.post-1507006733367697427</id><published>2008-03-10T07:26:00.000-07:00</published><updated>2008-03-10T07:26:00.000-07:00</updated><title type='text'>Wonderful and a jquery plugin would be awesome.I p...</title><content type='html'>Wonderful and a jquery plugin would be awesome.I personally feel you can choose any markup that makes things simple for you.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/1507006733367697427'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1078898499337496912/1536938175853697257/comments/default/1507006733367697427'/><link rel='alternate' type='text/html' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html?showComment=1205159160000#c1507006733367697427' title=''/><author><name>Anonymous</name><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://blog.jeremymartin.name/2008/03/efficient-tag-cloud-algorithm.html' ref='tag:blogger.com,1999:blog-1078898499337496912.post-1536938175853697257' source='http://www.blogger.com/feeds/1078898499337496912/posts/default/1536938175853697257' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1150670459'/></entry></feed>
