Логотип schoolsw3.com
Учебники Справочники Упражнения КАК? Меню
Создать
Редактор Поддержка Форум

×
Учебники
Справочники
Упражнения
Пожертвовать Обновление Реклама Видео Магазин

JS Учебник

JS Главная JS Введение JS Установить JS Вывод JS Заявления JS Синтаксис JS Комментарии JS Переменные JS Let JS Const JS Операторы JS Арифметика JS Присваивание JS Типы данных JS Функции JS Объекты JS События JS Строки JS Методы строк JS Поиск строк JS Шаблоны строк JS Числа JS BigInt JS Методы чисел JS Свойства чисел JS Массивы JS Методы массива JS Поиск массива JS Сортировка массива JS Итерация массива JS Постоянный массив JS Даты JS Форматы даты JS Методы даты JS Методы набора даты JS Объекты Math JS Случайные числа JS Булевы JS Операторы сравнения JS Оператор If...Else JS Оператор Switch JS Цикл For JS Цикл For In JS Цикл For Of JS Цикл While JS Оператор Break JS Повторяющиеся JS Наборы JS Набор методов JS Карты JS Методы Карты JS Typeof JS Преобразование JS Битовые JS Выражения JS Приоритет JS Ошибки JS Область JS Подъемный JS Строгий JS Ключевое слово this JS Стрелки JS Классы JS Модули JS JSON JS Отладчик кода JS Стиль JS Практика JS Ошибки JS Эффективность JS Слова

JS Версии

JS Версии JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS 2019 JS 2020 JS 2021 JS 2022 JS 2023 JS IE/Edge JS История

JS Объекты

Определение объектов Свойства объектов Методы объектов Отображение объектов Доступ к объекту Конструкторы объектов Прототипы объектов Управление объектами Защита объектов

JS Функции

Определение функций Параметры функций Обращение к функциям Вызов функций Применение функций Заимствование функций Закрытие функций

JS Классы

Введение класса Наследование класса Статистический класс

JS Асинхронный

JS Обратный вызов JS Асинхронный JS Обещания JS Асинхронный

JS HTML DOM

DOM Введение DOM Методы DOM Документы DOM Элементы DOM Изменить HTML DOM Проверка формы DOM Изменить CSS DOM Анимация DOM События DOM Прослушиватель DOM Навигация DOM Узлы DOM Коллекция DOM Список узлов

JS Браузер BOM

JS Window JS Экран JS Расположение JS История JS Навигатор JS Предупреждение JS Синхронизация JS Файлы cookie

JS Веб APIы

API Веб Введение API Веб Формы API Веб История API Веб Хранилище API Веб Работник API Веб Извлечь Файл API Веб Геолокации

JS AJAX

AJAX Введение AJAX XMLHttpRequest AJAX Запрос на сервер AJAX Ответ с сервера AJAX XML Файл AJAX PHP Файл AJAX ASP Файл AJAX База данных AJAX Приложения AJAX Примеры

JS JSON

JSON Введение JSON Синтаксис JSON с XML JSON Типы данных JSON Парсинг JSON Строки JSON Объекты JSON Массивы JSON Сервер JSON с PHP JSON с HTML JSON с JSONP

JS или jQuery

jQuery Селекторы jQuery HTML Элементы jQuery CSS Стили jQuery DOM

JS Графика

JS Графики JS Холсты JS Plotly.js JS Chart.js JS Google Диаграмма JS D3.js

JS Примеры

JS Примеры JS JSON JS HTML DOM JS HTML Ввод JS HTML Объекты JS HTML События JS Браузер JS Редактор JS Упражнения JS Тест-викторина

JS Рекомендация

JavaScript Объекты HTML DOM Объекты


JavaScript Plotly.js


Plotly.js is a charting library that comes with over 40 chart types:

  • Horizontal and Vertical Bar Charts
  • Pie and Donut Charts
  • Line Charts
  • Scatter and Bubble Plots
  • Equation Plots
  • 3D Charts
  • Statistical Graphs
  • SVG Maps
  • ...

Plotly.js is free and open-source under the MIT license. It costs nothing to install and use. You can view the source, report issues and contribute using Github.

Bar Charts

Source Code

const xArray = ["Italy","France","Spain","USA","Argentina"];
const yArray = [55, 49, 44, 24, 15];

const data = [{
  x: xArray,
  y: yArray,
  type: "bar",
  orientation:"v",
  marker: {color:"rgba(0,0,255)"}
}];

const layout = {title:"World Wide Wine Production"};

Plotly.newPlot("myPlot", data, layout);

Try it Yourself »


Horizontal Bar Charts

Source Code

const xArray = [55, 49, 44, 24, 15];
const yArray = ["Italy","France","Spain","USA","Argentina"];

const data = [{
  x: xArray,
  y: yArray,
  type: "bar",
  orientation: "h",
  marker: {color:"rgba(255,0,0,0.6)"}
}];

const layout = {title:"World Wide Wine Production"};

Plotly.newPlot("myPlot", data, layout);

Try it Yourself »


Pie Charts

To display a pie instead of bars, change x and y to labels and values, and change the type to "pie":

const data = [{
  labels: xArray,
  values: yArray,
  type: "pie"
}];

Try it Yourself »


Donut Charts

To display a donut instead of a pie, add a hole:

const data = [{
  labels: xArray,
  values: yArray,
  hole: .4,
  type: "pie"
}];

Try it Yourself »


Plotting Equations

Source Code

let exp = "Math.sin(x)";

// Generate values
const xValues = [];
const yValues = [];
for (let x = 0; x <= 10; x += 0.1) {
  xValues.push(x);
  yValues.push(eval(exp));
}

// Display using Plotly
const data = [{x:xValues, y:yValues, mode:"lines"}];
const layout = {title: "y = " + exp};
Plotly.newPlot("myPlot", data, layout);
Try it Yourself »

To display scatters instead, change mode to markers:

// Display using Plotly
const data = [{x:xValues, y:yValues, mode:"markers"}];
const layout = {title: "y = " + exp};
Plotly.newPlot("myPlot", data, layout);
Try it Yourself »

Scatter Plots

Source Code

const xArray = [50,60,70,80,90,100,110,120,130,140,150];
const yArray = [7,8,8,9,9,9,10,11,14,14,15];

// Define Data
const data = [{
  x: xArray,
  y: yArray,
  mode:"markers",
  type:"scatter"
}];

// Define Layout
const 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);

Try it Yourself »


Line Graphs

Source Code

const xArray = [50,60,70,80,90,100,110,120,130,140,150];
const yArray = [7,8,8,9,9,9,10,11,14,14,15];

// Define Data
const data = [{
  x: xArray,
  y: yArray,
  mode: "lines",
  type: "scatter"
}];

// Define Layout
const layout = {
  xaxis: {range: [40, 160], title: "Square Meters"},
  yaxis: {range: [5, 16], title: "Price in Millions"},
  title: "House Prices vs Size"
};

// Display using Plotly
Plotly.newPlot("myPlot", data, layout);

Try it Yourself »



Bubble Plots

Bubble Plots are Scatter Plots whose markers have variable color, size, and symbols.

It is a type of 3-dimensional chart with only two axes (x and y) where the size of the bubble communicates the third dimention.

Source Code

const xArray = [1,2,3,4];
const yArray = [10,20,30,40];

const trace1 = {
  x: xArray,
  y: yArray,
  mode: 'markers',
  marker: {
    color: ['red', 'green', 'blue', 'orange'],
    size: [20, 30, 40, 50]
  }
};

const data = [trace1];

const layout = {
  title: "Plotting Bubbles"
};

Plotly.newPlot('myPlot', data, layout);

Try it Yourself »


Linear Graphs

Source Code

let exp = "x + 17";

// Generate values
const xValues = [];
const yValues = [];
for (let x = 0; x <= 10; x += 1) {
  yValues.push(eval(exp));
  xValues.push(x);
}

// Define Data
const data = [{
  x: xValues,
  y: yValues,
  mode: "lines"
}];

// Define Layout
const layout = {title: "y = " + exp};

// Display using Plotly
Plotly.newPlot("myPlot", data, layout);

Try it Yourself »


Multiple Lines

Source Code

let exp1 = "x";
let exp2 = "1.5*x";
let exp3 = "1.5*x + 7";

// Generate values
const x1Values = [];
const x2Values = [];
const x3Values = [];
const y1Values = [];
const y2Values = [];
const y3Values = [];

for (let 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
const data = [
  {x: x1Values, y: y1Values, mode:"lines"},
  {x: x2Values, y: y2Values, mode:"lines"},
  {x: x3Values, y: y3Values, mode:"lines"}
];

// Define Layout
const layout = {title: "[y=" + exp1 + "] [y=" + exp2 + "] [y=" + exp3 + "]"};

// Display using Plotly
Plotly.newPlot("myPlot", data, layout);

Try it Yourself »