<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="java.util.*" %> <%@ page import="com.google.gson.Gson"%> <%@ page import="com.google.gson.JsonObject"%> <% Gson gsonObj = new Gson(); Map<Object,Object> map = null; List<Map<Object,Object>> list = new ArrayList<Map<Object,Object>>(); map = new HashMap<Object,Object>(); map.put("label", "Belgium"); map.put("y", 1000); list.add(map); map = new HashMap<Object,Object>(); map.put("label", "China"); map.put("y", 25000); list.add(map); map = new HashMap<Object,Object>(); map.put("label", "Morocco"); map.put("y", 7000); list.add(map); map = new HashMap<Object,Object>(); map.put("label", "Namibia"); map.put("y", 1900); list.add(map); map = new HashMap<Object,Object>(); map.put("label", "Russia"); map.put("y", 1500); list.add(map); String dataPoints = gsonObj.toJson(list); %> <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script type="text/javascript"> window.onload = function() { var chart = new CanvasJS.Chart("chartContainer", { animationEnabled: true, theme: "light2", // "light1", "dark1", "dark2" title: { text: "World Arsenic Production 2016" }, subtitles: [{ text: "In Metric Tons", fontSize: 16 }], axisY: { scaleBreaks: { type: "wavy", autoCalculate: true } }, data: [{ type: "column", indexLabel: "{y}", dataPoints: <%out.print(dataPoints);%> }] }); chart.render(); } </script> </head> <body> <div id="chartContainer" style="height: 370px; width: 100%;"></div> <script src="https://cdn.canvasjs.com/canvasjs.min.js"></script> </body> </html>