Plotly.js
Plotly.js is a chart library that includes over 40 chart types, 3D charts, statistical charts, and SVG maps.
Scatter Plot
Source Code
var xArray = [50,60,70,80,90,100,110,120,130,140,150]; var yArray = [7,8,8,9,9,9,10,11,14,14,15]; // Define data var data = [{ x: xArray, y: yArray, mode:"markers", type:"scatter" }] // Define layout var layout = { xaxis: {range: [40, 160], title: "Square Meters"}, yaxis: {range: [5, 16], title: "Price (in millions of yuan)"}, title: "House Price vs. Area" }; Plotly.newPlot("myPlot", data, layout);
Line Chart
Source Code
var xArray = [50,60,70,80,90,100,110,120,130,140,150]; var yArray = [7,8,8,9,9,9,10,11,14,14,15]; // Define data var data = [{ x: xArray, y: yArray, mode: "lines", type: "scatter" }] // Define layout var layout = { xaxis: {range: [40, 160], title: "Square Meters"}, yaxis: {range: [5, 16], title: "Price (in millions of yuan)"}, title: "House Price vs. Area" }; // Display using Plotly Plotly.newPlot("myPlot", data, layout);
Linear Graph
Source Code
var exp = "x + 17"; // Generate values var xValues = []; var yValues = []; for (var x = 0; x <= 10; x += 1) { yValues.push(eval(exp)); xValues.push(x); } // Define data var data = [{ x: xValues, y: yValues, mode: "lines" }] // Define layout var layout = {title: "y = " + exp}; // Display using Plotly Plotly.newPlot("myPlot", data, layout);
Multi-line
Source Code
var exp1 = "x"; var exp2 = "1.5*x"; var exp3 = "1.5*x + 7"; // Generate values var x1Values = []; var x2Values = []; var x3Values = []; var y1Values = []; var y2Values = []; var y3Values = []; for (var x = 0; x <= 10; x += 1) { x1Values.push(x); x2Values.push(x); x3Values.push(x); y1Values.push(eval(exp1)); y2Values.push(eval(exp2)); y3Values.push(eval(exp3)); } // Define data var data = [ {"x": x1Values, "y": y1Values, "mode": "lines"}, {"x": x2Values, "y": y2Values, "mode": "lines"}, {"x": x3Values, "y": y3Values, "mode": "lines"} ]; // Define layout var layout = {title: "[y=" + exp1 + "] [y=" + exp2 + "] [y=" + exp3 + "]"}; // Display using Plotly Plotly.newPlot("myPlot", data, layout);
Bar Chart
Source Code
var xArray = ["Italy","France","Spain","United States","Argentina"]; var yArray = [55, 49, 44, 24, 15]; var data = [{ x: xArray, y: yArray, type: "bar" }]; var layout = {title: "Global Wine Production"}; Plotly.newPlot("myPlot", data, layout);
Horizontal Bar Chart
Source Code
var xArray = [55, 49, 44, 24, 15]; var yArray = ["Italy","France","Spain","United States","Argentina"]; var data = [{ x: xArray, y: yArray, type: "bar", orientation: "h" }] var layout = {title: "Global Wine Production"}; Plotly.newPlot("myPlot", data, layout);
Pie Chart
If you want to display a pie chart instead of a bar chart, change x and y to labels and values, and change type to "pie":
var data = [{ labels: xArray, values: yArray, type: "pie" }]
Donut Chart
To display a donut chart instead of a pie chart, add a hole:
var data = [{ labels: xArray, values: yArray, hole: .4, type: "pie" }]
Plot Equation
Source Code
var exp = "Math.sin(x)"; // Generate values var xValues = []; var yValues = []; for (var x = 0; x <= 10; x += 0.1) { yValues.push(eval(exp)); xValues.push(x); } // Display using Plotly var data = [{x:xValues, y:yValues, mode:"lines"}]; var layout = {title: "y = " + exp}; Plotly.newPlot("myPlot", data, layout);