Обзор
Организационные диаграммы представляют собой диаграммы иерархии узлов, обычно используемые для изображения отношений начальника/подчиненного в организации. Генеалогическое древо — это разновидность организационной диаграммы.
Пример
<html> <head> <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> <script type="text/javascript"> google.charts.load('current', {packages:["orgchart"]}); google.charts.setOnLoadCallback(drawChart); function drawChart() { var data = new google.visualization.DataTable(); data.addColumn('string', 'Name'); data.addColumn('string', 'Manager'); data.addColumn('string', 'ToolTip'); // For each orgchart box, provide the name, manager, and tooltip to show. data.addRows([ [{'v':'Mike', 'f':'Mike<div style="color:red; font-style:italic">President</div>'}, '', 'The President'], [{'v':'Jim', 'f':'Jim<div style="color:red; font-style:italic">Vice President</div>'}, 'Mike', 'VP'], ['Alice', 'Mike', ''], ['Bob', 'Jim', 'Bob Sponge'], ['Carol', 'Bob', ''] ]); // Create the chart. var chart = new google.visualization.OrgChart(document.getElementById('chart_div')); // Draw the chart, setting the allowHtml option to true for the tooltips. chart.draw(data, {'allowHtml':true}); } </script> </head> <body> <div id="chart_div"></div> </body> </html>
Загрузка
Имя пакета — 'orgchart'
.
google.charts.load('current', {packages: ['orgchart']});
Имя класса визуализации — google.visualization.OrgChart
.
var visualization = new google.visualization.OrgChart(container);
Формат данных
Таблица с тремя строковыми столбцами, где каждая строка представляет узел в организационной диаграмме. Вот три столбца:
- Столбец 0 — идентификатор узла. Он должен быть уникальным среди всех узлов и может включать любые символы, включая пробелы. Это показано на узле. Вместо этого вы можете указать форматированное значение для отображения на диаграмме, но неформатированное значение по-прежнему будет использоваться в качестве идентификатора.
- Столбец 1 — [ необязательно ] Идентификатор родительского узла. Это должно быть неформатированное значение из столбца 0 другой строки. Оставьте неопределенным для корневого узла.
- Столбец 2 — [ необязательный ] Текст подсказки, который отображается, когда пользователь наводит курсор на этот узел.
Каждый узел может иметь ноль или один родительский узел и ноль или более дочерних узлов.
Пользовательские свойства
Вы можете присвоить следующие пользовательские свойства элементам таблицы данных, используя метод setProperty()
класса DataTable
:
Имя свойства | |
---|---|
выбранный стиль | Применяется к: строке DataTable Строка встроенного стиля, назначаемая определенному узлу при выборе. Чтобы это работало, вы должны установить опциюallowHtml Пример: |
стиль | Применяется к: строке DataTable Строка встроенного стиля, которую можно назначить определенному узлу. Это переопределяется свойством Пример: |
Параметры конфигурации
Имя | |
---|---|
РазрешитьСвернуть | Определяет, приведет ли двойной щелчок к свертыванию узла. Тип: boolean По умолчанию: false |
разрешитьHtml | Если установлено значение true, имена, содержащие теги HTML, будут отображаться как HTML. Тип: boolean По умолчанию: false |
цвет | Устарело. Вместо этого используйте nodeClass. Цвет фона элементов организационной диаграммы. Тип: string По умолчанию: '#edf7ff' |
компактные строки | Если установлено значение true, поддеревья размещаются как можно ближе, пока узлы не перекрываются. Используйте эту опцию, чтобы уменьшить общую ширину чертежа и длину края. Тип: boolean По умолчанию: false |
класс узла | Имя класса, присваиваемое элементам узла. Примените CSS к этому имени класса, чтобы указать цвета или стили для элементов диаграммы. Тип: string По умолчанию: default class name |
выбранныйNodeClass | Имя класса, которое будет назначено выбранным элементам узла. Примените CSS к этому имени класса, чтобы указать цвета или стили для выбранных элементов диаграммы. Тип: string По умолчанию: default class name |
выборЦвет | Устарело. Вместо этого используйте selectedNodeClass. Цвет фона выбранных элементов организационной диаграммы. Тип: string По умолчанию: '#d6e9f8' |
размер | «маленький», «средний» или «большой» Тип: string По умолчанию: 'medium' |
Методы
Метод | |
---|---|
collapse(row, collapsed) | Сворачивает или разворачивает узел.
Тип возврата: none |
draw(data, options) | Рисует диаграмму. Тип возврата: none |
getChildrenIndexes(row) | Возвращает массив с индексами дочерних элементов данного узла. Тип возвращаемого Array.<number> |
getCollapsedNodes | Возвращает массив со списком индексов свернутого узла. Тип возвращаемого значения: Array.<number> |
getSelection() | Стандартная реализация Тип возвращаемого значения: Массив элементов выбора. |
setSelection(selection) | Стандартная реализация Тип возврата: нет |
События
Имя | |
---|---|
крах | Событие срабатывает, когда для Характеристики: collapsed — логическое значение, указывающее, является ли это событием «свертывания» или «развертывания».row — индекс строки в таблице данных, отсчитываемый от нуля, соответствующий узлу, по которому щелкают мышью. |
при наведении курсора на | Срабатывает, когда пользователь наводит курсор на определенную строку. Характеристики: row — индекс строки в таблице данных, отсчитываемый от нуля, соответствующий узлу, на который наведен курсор мыши. |
onmouseout | Срабатывает, когда пользователь выходит из строки. Характеристики: row — индекс строки в таблице данных, отсчитываемый от нуля, соответствующий узлу, из которого наведен курсор мыши. |
выбирать | Стандартное событие выбора Характеристики: Никто |
готовый | Диаграмма готова для вызовов внешних методов. Если вы хотите взаимодействовать с диаграммой и вызывать методы после ее рисования, вам следует настроить прослушиватель этого события перед вызовом метода Характеристики: Никто |
Политика данных
Весь код и данные обрабатываются и отображаются в браузере. Никакие данные не отправляются ни на один сервер.