To execute the example, the HTML page must contain links to the PP.js and PP.GraphicsBase.js, PP.TagCloud.js script files and PP.css styles file in the <body> tag of HTML page of the <div> element with the tagCloud identifier. In the onload event of the <body> tag it is necessary to add the call of the createTagCloud() function. Add tag cloud on the HTML page:
function createTagCloud() { // Data for creating a tag cloud data = new PP.DataSource({ Title: "DataSource", AttributesNames: { color: "Color", size: "Size", value: "Value" }, Series: { "Tag1": { color: { Items: [10.0] }, size: { Items: [50] } },
"Tag2": { color: { Items: [20.0] }, size: { Items: [60] } }, "Tag3": { color: { Items: [30.0] }, size: { Items: [30] } },
"Tag4": { color: { Items: [40.0] }, size: { Items: [40] } } } }); scales = new PP.ScaleBase({ Id: "Scale0", Values: [10.0, 20.0, 30.0, 40.0, 50.0], Items: ["#FFFF462C", "#FFEBAF36", "#FFFFD900", "#FFB1CA40", "#FF6A8535"], EnableEquality: false, NoData: "#FFBFBFBF", TypeArguments: "Brush"
}); color = new PP.ColorVisual({ ColorMapping: new PP.DataMapping({ DataSource: null, DimAttributeId: "color", Type: "Scale", Index: 0, DataSource: data, Scale: scales }) }); size = new PP.SizeVisual({ NumericMapping: new PP.DataMapping({ DimAttributeId: "size", Type: "None", Index: 0, DataSource: data })
}); // Create a tag cloud tagCloud = new PP.Ui.TagCloud({ // Set parent element ParentNode: document.getElementById("tagCloud"), // Set visualizers Visuals: { ColorVisual: color, SizeVisual: size }, // Set tag cloud size Width: 500, Height: 300, // Set tags ItemsNames: { Tag1: "Tag 1", Tag2: "Tag 2", Tag3: "Tag 3", Tag4: "Tag 4" }, // Set data source
DataSources: [data], // Set whether tags move on mouse hold down IsDragControl: true, // Set zoom by mouse wheel IsWheelZoom: true, // Set element sorting SortItems: true }); // Set cylindrical form of element dispersion tagCloud.setShape("Cylinder"); }
As a result, tag cloud is added on the page:
Display list of items headers which are in the tag cloud:
// Display items headers: console.log("Items: "); var items = tagCloud.getItemsNames(); for (i in items) { console.log(items[i]); }
As a result the console displays headers of the tag cloud items:
Items:
Tag 1
Tag 2
Tag 3
Tag 4
See also: