Plotly.js
Plotly.js - это библиотека диаграмм, которая содержит более 40 типов диаграмм, трехмерные диаграммы, статистические графики и карты SVG.
Точечные графики
Исходный код
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];
// Определить данные
var data = [{
x: xArray,
y: yArray,
mode:"markers",
type:"scatter"
}];
// Определить макет
var layout = {
xaxis: {range: [40, 160], title: "Square Meters"},
yaxis: {range: [5, 16], title: "Price in Millions"},
title: "House Prices vs. Size"
};
Plotly.newPlot("myPlot", data, layout);
Линейные графики
Исходный код
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];
// Определить данные
var data = [{
x: xArray,
y: yArray,
mode: "lines",
type: "scatter"
}];
// Определить макет
var layout = {
xaxis: {range: [40, 160], title: "Square Meters"},
yaxis: {range: [5, 16], title: "Price in Millions"},
title: "House Prices vs Size"
};
// Отобразить с помощью Plotly
Plotly.newPlot("myPlot", data, layout);
Линейные графики (прямые)
Исходный код
var exp = "x + 17";
// Генерировать значения
var xValues = [];
var yValues = [];
for (var x = 0; x <= 10; x += 1) {
yValues.push(eval(exp));
xValues.push(x);
}
// Определить данные
var data = [{
x: xValues,
y: yValues,
mode: "lines"
}];
// Определить макет
var layout = {title: "y = " + exp};
// Отобразить с помощью Plotly
Plotly.newPlot("myPlot", data, layout);
Несколько линий
Исходный код
var exp1 = "x";
var exp2 = "1.5*x";
var exp3 = "1.5*x + 7";
// Генерировать значения
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));
}
// Определить данные
var data = [
{x: x1Values, y: y1Values, mode:"lines"},
{x: x2Values, y: y2Values, mode:"lines"},
{x: x3Values, y: y3Values, mode:"lines"}
];
// Определить макет
var layout = {title: "[y=" + exp1 + "] [y=" + exp2 + "] [y=" + exp3 + "]"};
// Отобразить с помощью Plotly
Plotly.newPlot("myPlot", data, layout);
Гистограммы
Исходный код
var xArray = ["Italy","France","Spain","USA","Argentina"];
var yArray = [55, 49, 44, 24, 15];
var data = [{
x: xArray,
y: yArray,
type: "bar"
}];
var layout = {title:"World Wine Wine Production"};
Plotly.newPlot("myPlot", data, layout);
Горизонтальные гистограммы
Исходный код
var xArray = [55, 49, 44, 24, 15];
var yArray = ["Italy","France","Spain","USA","Argentina"];
var data = [{
x: xArray,
y: yArray,
type: "bar",
orientation: "h"
}];
var layout = {title:"World Wine Wine Production"};
Plotly.newPlot("myPlot", data, layout);
Pie Charts / Круговые диаграммы
Чтобы отобразить круговую диаграмму вместо столбцов, измените x и y на метки и значения и измените тип на "pie" (круговая диаграмма):
var data = [{
labels: xArray,
values: yArray,
type: "pie"
}];
Donut Charts / Пончиковые диаграммы
Чтобы отобразить "donut" (пончик) вместо "pie" (пирога), добавьте "hole" (дырку):
var data = [{
labels: xArray,
values: yArray,
hole: .4,
type: "pie"
}];
Графики уравнений
Исходный код
var exp = "Math.sin(x)";
// Генерировать значения
var xValues = [];
var yValues = [];
for (var x = 0; x <= 10; x += 0.1) {
yValues.push(eval(exp));
xValues.push(x);
}
// Отобразить с помощью Plotly
var data = [{x:xValues, y:yValues, mode:"lines"}];
var layout = {title: "y = " + exp};
Plotly.newPlot("myPlot", data, layout);