Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Brian_Munz
Employee
Employee

Word Cloud Object Extension

A new app for the US Presidential election is being released on the QlikView Demo Site shortly, and it contains an extension for a word cloud that might be useful.  It's built using this word cloud generation javascript library (built on the d3 JS library) which attempted to simulate the look and feel of Wordle:

cloud.png

I don't use all of the options available in this library and keep it pretty bare bones, but I imagine this extension should satisfy most use cases.

The properties are fairly straightforward:

cloudprops.png

The Words dimension is simply the list of words that will be displayed in the cloud

Measurement is an expression which controls the sizes of the words.  This could be anything you'd like to measure the words against.

Color Expression is the expression which controls the color of the words.  If you simply want one color, you could hardcode it to a hex or RGB color, or you could use an expression and mix two colors (using the ColorMix1 function from QlikView), or use the expression like a gauge and present any number of colors based on some range.

The Maximum Font Size and Minimum Font Size properties are simply the maximum and minimum sizes of the words.

SOME THINGS TO NOTE:

The cloud can be a bit unwieldly (or maybe crash) if you pass too many words into it, so I've set a maximum data set of 700 for this extension.  To change this, edit the Definition.xml file in the extension's folder and change 700 to whatever you want in this line:

<ExtensionObject Label="wordCloud" Description="wordCloud" PageHeight="700">

The only issue this might cause is if you have 1000 words in the dimension, a random selection of 700 will be passed in, in no particular order.  I've tried and tried to get the extension to sort based on the expression rather than the dimension and I think it's not possible (which may be a bug), so instead returning the top x number of words based on an expression might need to be done using set analysis, firstsortvalue, or ranking function.

I think that's it.  Let me know if you run into any problems.

EDIT

I now host this extension on GitHub. 

brianwmunz/wordCloud-QV11 · GitHub

Please download it from there form now on.  Also, feel free to update, change, improve, etc. the extension in any way you please using GitHub.

Thanks.

93 Replies
Not applicable

Hi all,

I am new to Qlikview and I'd like to know how to show word cloud with colours. I want to show multiple colours in word cloud. I will be glad if you have the sample code to change the colours properties in "Color Expression".

Thank you!

Not applicable

Brian, thanks for the object, Looks great and working fine for me in the client.

Where do I deploy the qar to from a server perspective? Possible?

Fixed .. was missing the directory structure.

Not applicable

Yin, within the Expression Editor under File you will see a Colormix wizard.

You can walk through the Wizard and simply paste in the Expression and it will work.

Not applicable

Hi,

I have gotten the word cloud to work by creating an excel with a column that has the list of words for the cloud and a column that dictates the size of the word in the cloud. However, is there a way to create a list of words in excel and have the cloud automatically assign a size to the word depending on the number of occurrences of that word? For example, if I have a column of words in excel: France England Spain Poland Finland Finland Finland Finland Finland, is there an expression I can implement for the measurement that would ensure that the words France, England, Spain and Poland were of equal size and smaller than the word Finland in my cloud? I'm pretty new to QV so any detailed advice would really help!

Thanks so much!

Not applicable

Hi Katrina,

Yes, I think you could accomplish what you want by using the Country field (assuming that's the name of the column in the Excel file) and using as a Measure/Expression "count(Country)", which would return the number of rows for each Country, giving each Country within the cloud extension the appropiate size.

Hope it helps.

Cheers!

Not applicable

Great thank you so much Borja!

felcar2013
Partner - Creator III
Partner - Creator III

hi Katrina

to rank use the Expression "rank(Count(Country))" and as Dimension "Country", then you can load the number in the cloud, say frequent 10 countries, etc

adarsh_a
Contributor III
Contributor III

Hi,

     The extension you have shared is working fine with IE8

Not applicable

Has anyone had experience installing this on the Access Point Server? We are trying to test it. Does it install like any other QV Extension object since it is a QAR file? It is showing up on my desktop, but not in Access Point. We are on 11.2

Not applicable

You have to install the Extension on the C:\ProgramData\QlikTech\QlikViewServer\Extensions\Objects when you want to use your server.

Regards!!

Diego!