Обзор
Динамический график для изучения нескольких индикаторов с течением времени. Диаграмма отображается в браузере с помощью Flash.
Примечание для разработчиков . Из-за настроек безопасности Flash это (и все визуализации на основе Flash) может работать неправильно при доступе из местоположения файла в браузере (например, file:///c:/webhost/myhost/myviz.html). ), а не с URL-адреса веб-сервера (например, http://www.myhost.com/myviz.html). Обычно это проблема только тестирования. Эту проблему можно решить, как описано на веб-сайте Adobe .
Пример
(Обратите внимание, что следующий код не будет работать при загрузке как локальный файл; его необходимо загрузить с веб-сервера.)
<html> <head> <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script> <script type="text/javascript"> google.charts.load('current', {packages:["motionchart"]}); google.charts.setOnLoadCallback(drawChart); function drawChart() { var data = new google.visualization.DataTable(); data.addColumn('string', 'Fruit'); data.addColumn('date', 'Date'); data.addColumn('number', 'Sales'); data.addColumn('number', 'Expenses'); data.addColumn('string', 'Location'); data.addRows([ ['Apples', new Date (1988,0,1), 1000, 300, 'East'], ['Oranges', new Date (1988,0,1), 1150, 200, 'West'], ['Bananas', new Date (1988,0,1), 300, 250, 'West'], ['Apples', new Date (1989,6,1), 1200, 400, 'East'], ['Oranges', new Date (1989,6,1), 750, 150, 'West'], ['Bananas', new Date (1989,6,1), 788, 617, 'West'] ]); var chart = new google.visualization.MotionChart(document.getElementById('chart_div')); chart.draw(data, {width: 600, height:300}); } </script> </head> <body> <div id="chart_div" style="width: 600px; height: 300px;"></div> </body> </html>
Загрузка
Имя пакета google.charts.load
— "motionchart"
.
google.charts.load('current', {'packages': ['motionchart']});
Имя класса визуализации — google.visualization.MotionChart
.
var visualization = new google.visualization.MotionChart(container);
Формат данных
- Первый столбец должен иметь тип «строка» и содержать имена объектов (например, «Яблоки», «Апельсины», «Бананы» в приведенном выше примере).
- Второй столбец должен содержать значения времени. Время может быть выражено в любом из следующих форматов:
- Год — тип столбца: «число». Пример: 2008 год.
- Месяц, день и год . Тип столбца: «дата»; значения должны быть экземплярами
Date
javascript. - Номер недели . Тип столбца: «строка»; значения должны использовать шаблон YYYYWww, соответствующий стандарту ISO 8601 . Пример: «2008W03».
- Квартал — тип столбца: «строка»; значения должны иметь шаблон YYYYQq, соответствующий стандарту ISO 8601 . Пример: «3 квартал 2008 г.».
- Последующие столбцы могут иметь тип «число» или «строка». Числовые столбцы будут отображаться в раскрывающихся меню для осей X, Y, цвета и размера. Столбцы строк будут отображаться только в раскрывающемся меню «Цвет». См. пример выше.
Установка исходного состояния
Вы можете указать, что диаграмма движения начинается с определенного состояния: то есть набора выбранных объектов и настроек представления. Для этого вам нужно сначала создать и отобразить диаграмму, затем внести любые изменения состояния, которые вы хотите, чтобы диаграмма отображала (выбрать значения, изменить настройки и т. д.), затем экспортировать эти настройки в виде строки и, наконец, использовать это строку в вашем коде, назначив ее опции «state». В следующих двух разделах описывается, как экспортировать и затем использовать код штата.
- Откройте рабочую диаграмму и задайте настройки, которые вы хотите сохранить. Настройки, которые вы можете указать, включают уровни непрозрачности, масштабирование и логарифмическое и линейное масштабирование.
- Откройте панель «Настройки» , щелкнув символ гаечного ключа в правом нижнем углу диаграммы.
- Нажмите ссылку «Дополнительно» в левом нижнем углу, чтобы добавить панель «Дополнительно» в набор.
- Разверните панель «Дополнительно» и скопируйте содержимое текстового поля «Состояние» в буфер обмена. (Примечание: вместо использования меню, описанного в шагах 2–4, вы можете вставить на свою страницу кнопку, которая вызывает
getState()
и отображает текущее состояние в окне сообщения.) - Назначьте строку состояния, скопированную на предыдущем шаге, параметру «state» в вашем коде, как показано здесь. При передаче в метод
draw()
диаграмма будет инициализирована в состояние, указанное при запуске.
var options = {}; options['state'] = '{"iconKeySettings":[],"stateVersion":3,"time":"notime","xAxisOption":"_NOTHING","playDuration":15,"iconType":"BUBBLE","sizeOption":"_NOTHING","xZoomedDataMin":null,"xZoomedIn":false,"duration":{"multiplier":1,"timeUnit":"none"},"yZoomedDataMin":null,"xLambda":1,"colorOption":"_NOTHING","nonSelectedAlpha":0.4,"dimensions":{"iconDimensions":[]},"yZoomedIn":false,"yAxisOption":"_NOTHING","yLambda":1,"yZoomedDataMax":null,"showTrails":true,"xZoomedDataMax":null};'; options['width'] = 600; options['height'] = 400; chart.draw(data, options);
Параметры конфигурации
Имя | Тип | По умолчанию | Описание |
---|---|---|---|
высота | число | 300 | Высота диаграммы в пикселях. |
ширина | число | 500 | Ширина диаграммы в пикселях. |
состояние | нить | никто | Исходное состояние отображения диаграммы. Это сериализованный объект JSON, который описывает уровень масштабирования, выбранные измерения, выбранные пузырьки/объекты и другие описания состояний. См. раздел «Настройка исходного состояния» , чтобы узнать, как это установить. |
показатьChartButtons | логическое значение | истинный | false скрывает кнопки, управляющие типом диаграммы (пузырьки/линии/столбцы) в правом верхнем углу. |
шоухедер | логическое значение | истинный | false скрывает метку заголовка сущностей (полученную из метки первого столбца в таблице данных). |
шоуселектлисткомпонент | логическое значение | истинный | false скрывает список видимых объектов. |
шоусайдпанель | логическое значение | истинный | false скрывает правую панель. |
showXMetricPicker | логическое значение | истинный | false скрывает средство выбора метрики для x. |
showYMetricPicker | логическое значение | истинный | false скрывает средство выбора метрики для y. |
showXScalePicker | логическое значение | истинный | false скрывает средство выбора масштаба для x. |
показатьYScalePicker | логическое значение | истинный | false скрывает средство выбора масштаба для y. |
показатьAdvancedPanel | логическое значение | истинный | false отключает раздел параметров на панели настроек. |
Методы
Метод | Тип возврата | Описание |
---|---|---|
draw(data, options) | никто | Рисует диаграмму с предоставленными параметрами. |
getState() | нить | Возвращает текущее состояние диаграммы движения, сериализованное в строку JSON. Чтобы назначить это состояние диаграмме, назначьте эту строку параметру state в методе draw() . Это часто используется для указания пользовательского состояния диаграммы при запуске вместо использования состояния по умолчанию. |
События
Имя | Описание | Характеристики |
---|---|---|
error | Вызывается, когда возникает ошибка при попытке отобразить диаграмму. | идентификатор, сообщение |
готовый | Диаграмма готова для вызовов внешних методов. Если вы хотите взаимодействовать с диаграммой и вызывать методы после ее рисования, вам следует настроить прослушиватель этого события до вызова метода рисования и вызывать их только после того, как событие было запущено. | Никто |
изменение состояния | Пользователь каким-то образом взаимодействовал с диаграммой. Вызовите getState() , чтобы узнать текущее состояние диаграммы. | Никто |
Политика данных
Весь код и данные обрабатываются и отображаются в браузере. Никакие данные не отправляются ни на один сервер.
Примечания
Из-за настроек безопасности Flash это (и все визуализации на основе Flash) может работать неправильно при доступе из местоположения файла в браузере (например, file:///c:/webhost/myhost/myviz.html), а не из URL-адрес веб-сервера (например, http://www.myhost.com/myviz.html). Обычно это проблема только тестирования. Эту проблему можно решить, как описано на веб-сайте Macromedia .