Angular Google Charts - Краткое руководство
Google Charts- это библиотека диаграмм на основе чистого JavaScript, предназначенная для улучшения веб-приложений за счет добавления интерактивных возможностей построения диаграмм. Он поддерживает широкий спектр диаграмм. Диаграммы рисуются с использованием SVG в стандартных браузерах, таких как Chrome, Firefox, Safari, Internet Explorer (IE). В устаревшем IE 6 для рисования графики используется VML.
angular-google-charts- это оболочка на основе Angular с открытым исходным кодом для Google Charts, которая обеспечивает элегантную и многофункциональную визуализацию Google Charts в приложении Angular и может легко использоваться вместе с компонентами Angular. Есть главы, в которых обсуждаются все основные компоненты Google Charts с подходящими примерами в приложении Angular.
Характеристики
Ниже приведены основные функции библиотеки Google Charts.
Compatability - Работает безупречно во всех основных браузерах и мобильных платформах, таких как Android и iOS.
Multitouch Support- Поддерживает мультитач на платформах с сенсорным экраном, таких как Android и iOS. Идеально подходит для смартфонов / планшетов на базе iPhone / iPad и Android.
Free to Use - Открытый исходный код и бесплатное использование в некоммерческих целях.
Lightweight - основная библиотека loader.js, очень легкая библиотека.
Simple Configurations - Использует json для определения различных конфигураций диаграмм и очень прост в изучении и использовании.
Dynamic - Позволяет изменять график даже после его создания.
Multiple axes- Не ограничивается осями x, y. Поддерживает несколько осей на диаграммах.
Configurable tooltips- Всплывающая подсказка появляется, когда пользователь наводит курсор на любую точку графика. googlecharts предоставляет встроенное средство форматирования всплывающих подсказок или средство форматирования обратного вызова для программного управления всплывающей подсказкой.
DateTime support- Специально обрабатывайте дату и время. Предоставляет многочисленные встроенные средства управления категориями по дате.
Print - Распечатать диаграмму с помощью веб-страницы.
External data- Поддерживает динамическую загрузку данных с сервера. Обеспечивает контроль над данными с помощью функций обратного вызова.
Text Rotation - Поддерживает вращение этикеток в любом направлении.
Поддерживаемые типы диаграмм
Библиотека Google Charts предоставляет следующие типы диаграмм:
Sr. No. | Тип диаграммы / Описание |
---|---|
1 | Line Charts Используется для рисования диаграмм на основе линий / сплайнов. |
2 | Area Charts Используется для рисования диаграмм по площади. |
3 | Pie Charts Используется для рисования круговых диаграмм. |
4 | Sankey Charts, Scatter Charts, Stepped area charts, Table, Timelines, TreeMap, Trendlines Используется для рисования разрозненных диаграмм. |
5 | Bubble Charts Используется для рисования пузырьковых диаграмм. |
6 | Dynamic Charts Используется для рисования динамических диаграмм, где пользователь может изменять диаграммы. |
7 | Combinations Используется для рисования комбинаций различных диаграмм. |
8 | 3D Charts Используется для рисования трехмерных диаграмм. |
9 | Angular Gauges Используется для рисования диаграмм типа спидометра. |
10 | Heat Maps Используется для рисования тепловых карт. |
11 | Tree Maps Используется для рисования древовидных карт. |
В следующих главах мы собираемся подробно обсудить каждый тип вышеупомянутых диаграмм с примерами.
Лицензия
Google Charts имеет открытый исходный код и бесплатен для использования. Перейдите по ссылке - Условия использования .
В этом руководстве вы узнаете, как подготовить среду разработки для начала работы с Google Charts и Angular Framework. В этой главе мы обсудим настройку среды, необходимую для Angular 6. Чтобы установить Angular 6, нам потребуется следующее:
- Nodejs
- Npm
- Angular CLI
- IDE для написания вашего кода
Nodejs должен быть больше 8,11, а npm должен быть больше 5,6.
Nodejs
Чтобы проверить, установлен ли nodejs в вашей системе, введите node -vв терминале. Это поможет вам увидеть версию nodejs, установленную в настоящее время в вашей системе.
C:\>node -v
v8.11.3
Если он ничего не печатает, установите nodejs в свою систему. Чтобы установить nodejs, перейдите на домашнюю страницуhttps://nodejs.org/en/download/ из nodejs и установите пакет на основе вашей ОС.
В зависимости от вашей ОС установите необходимый пакет. После установки nodejs вместе с ним будет установлен npm. Чтобы проверить, установлен ли npm, введите в терминале npm -v. Он должен отображать версию файла npm.
C:\>npm -v
5.6.0
Установка Angular 6 очень проста с помощью angular CLI. Посетите домашнюю страницуhttps://cli.angular.io/ angular, чтобы получить ссылку на команду.
Тип npm install -g @angular/cli, чтобы установить angular cli в вашей системе.
Вы получите указанную выше установку в своем терминале после установки Angular CLI. Вы можете использовать любую IDE по вашему выбору, например, WebStorm, Atom, Visual Studio Code и т. Д.
Установить Google Charts Wrapper
Выполните следующую команду, чтобы установить модуль Google Charts Wrapper в созданном проекте.
googleChartsApp> npm angular-google-charts
+ [email protected]
added 2 packages in 20.526s
Добавьте следующую запись в файл app.module.ts
import { GoogleChartsModule } from 'angular-google-charts';
imports: [
...
GoogleChartsModule
],
В этой главе мы продемонстрируем конфигурацию, необходимую для рисования диаграммы с помощью Google Chart API в Angular.
Шаг 1 - Создайте приложение Angular
Выполните следующие шаги, чтобы обновить приложение Angular, которое мы создали в Angular 6 - Глава Настройка проекта -
Шаг | Описание |
---|---|
1 | Создайте проект с именем googleChartsApp, как описано в главе Angular 6 - Настройка проекта . |
2 | Измените app.module.ts , app.component.ts и app.component.html, как описано ниже. Остальные файлы оставьте без изменений. |
3 | Скомпилируйте и запустите приложение, чтобы проверить результат реализованной логики. |
Ниже приводится содержание измененного дескриптора модуля. app.module.ts.
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { GoogleChartsModule } from 'angular-google-charts';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,GoogleChartsModule
],
providers: [], bootstrap: [AppComponent]
})
export class AppModule { }
Ниже приводится содержимое измененного файла хоста HTML. app.component.html.
<google-chart #chart
[title]="title"
[type]="type"
[data]="data"
[columnNames]="columnNames"
[options]="options"
[width]="width"
[height]="height">
</google-chart>
Мы увидим обновленный app.component.ts в конце после понимания настроек.
Шаг 2 - Используйте конфигурации
Установить заголовок
title = 'Browser market shares at a specific website, 2014';
Установить тип диаграммы
type='PieChart';
данные
Настройте данные для отображения на диаграмме.
data = [
['Firefox', 45.0],
['IE', 26.8],
['Chrome', 12.8],
['Safari', 8.5],
['Opera', 6.2],
['Others', 0.7]
];
имена столбцов
Настройте отображаемые имена столбцов.
columnNames = ['Browser', 'Percentage'];
параметры
Настройте другие параметры.
options = {
colors: ['#e0440e', '#e6693e', '#ec8f6e', '#f3b49f', '#f6c7b6'], is3D: true
};
пример
Рассмотрим следующий пример, чтобы лучше понять синтаксис конфигурации -
app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'Browser market shares at a specific website, 2014';
type = 'PieChart';
data = [
['Firefox', 45.0],
['IE', 26.8],
['Chrome', 12.8],
['Safari', 8.5],
['Opera', 6.2],
['Others', 0.7]
];
columnNames = ['Browser', 'Percentage'];
options = {
};
width = 550;
height = 400;
}
Результат
Проверьте результат.
Диаграммы с областями используются для построения диаграмм с областями. В этом разделе мы собираемся обсудить следующие типы диаграмм на основе областей.
Старший Нет | Тип диаграммы / Описание |
---|---|
1 | Основная область Базовая диаграмма с областями |
2 | Область с отрицательными значениями Диаграмма с областями с отрицательными значениями. |
3 | Сложенная область Диаграмма с областями, наложенными одна на другую. |
4 | Область с недостающими точками График с пропущенными точками в данных. |
Гистограммы используются для построения гистограмм. В этом разделе мы собираемся обсудить следующие типы столбчатых диаграмм.
Старший Нет | Тип диаграммы / Описание |
---|---|
1 | Базовый бар Базовая гистограмма |
2 | Сгруппированная столбчатая диаграмма Сгруппированная гистограмма. |
3 | Сложенный бар Столбиковая диаграмма с наложенными друг на друга столбцами. |
4 | Отрицательная полоса Гистограмма с отрицательным стеком. |
Пузырьковые диаграммы используются для построения пузырьковых диаграмм. В этом разделе мы собираемся обсудить следующие типы пузырьковых диаграмм.
Старший Нет | Тип диаграммы / Описание |
---|---|
1 | Базовый пузырь Базовая пузырьковая диаграмма. |
2 | Пузырьковая диаграмма с метками данных Пузырьковая диаграмма с метками данных. |
Графики свечей используются для отображения стоимости открытия и закрытия в зависимости от отклонения стоимости и обычно используются для представления акций. В этом разделе мы собираемся обсудить следующие типы графиков на основе свечей.
Старший Нет | Тип диаграммы / Описание |
---|---|
1 | Базовый подсвечник Базовый свечной график. |
2 | Подсвечник с индивидуальными цветами Настроенный график свечей. |
Столбчатые диаграммы используются для построения диаграмм на основе столбцов. В этом разделе мы собираемся обсудить следующие типы диаграмм на основе столбцов.
Старший Нет | Тип диаграммы / Описание |
---|---|
1 | Базовая колонка Базовая столбчатая диаграмма |
2 | Сгруппированная столбчатая диаграмма Групповая диаграмма Colummn. |
3 | Столбец с накоплением Столбчатая диаграмма с наложенными друг на друга столбцами. |
4 | Отрицательный столбец с накоплением Столбчатая диаграмма с отрицательным стеком. |
Комбинированная диаграмма помогает отображать каждую серию как отдельный тип маркера из следующего списка: линия, область, столбцы, свечи и ступенчатая область. Чтобы назначить тип маркера по умолчанию для серии, используйте свойство seriesType. Свойство серии необходимо использовать для определения свойств каждой серии отдельно. Ниже приведен пример столбчатой диаграммы, показывающей различия.
Мы уже видели конфигурации, используемые для рисования диаграммы в главе Синтаксис конфигурации Google Charts . Теперь давайте посмотрим на пример столбчатой диаграммы, показывающей различия.
Конфигурации
Мы использовали ComboChart класс, чтобы показать комбинированную диаграмму.
type='ComboChart';
пример
app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'Fruits distribution';
type = 'ComboChart';
data = [
["Apples", 3, 2, 2.5],
["Oranges",2, 3, 2.5],
["Pears", 1, 5, 3],
["Bananas", 3, 9, 6],
["Plums", 4, 2, 3]
];
columnNames = ['Fruits', 'Jane','Jone','Average'];
options = {
hAxis: {
title: 'Person'
},
vAxis:{
title: 'Fruits'
},
seriesType: 'bars',
series: {2: {type: 'line'}}
};
width = 550;
height = 400;
}
Результат
Проверьте результат.
Гистограмма - это диаграмма, которая группирует числовые данные в сегменты, отображая сегменты в виде сегментированных столбцов. Они используются для описания распределения набора данных в виде того, как часто значения попадают в диапазоны. Google Charts автоматически выбирает количество сегментов за вас. Все сегменты имеют одинаковую ширину и высоту, пропорциональную количеству точек данных в сегменте. Гистограммы аналогичны столбчатым диаграммам в других аспектах. В этом разделе мы собираемся обсудить следующие типы диаграмм на основе гистограмм.
Старший Нет | Тип диаграммы / Описание |
---|---|
1 | Базовая гистограмма Базовая гистограмма. |
2 | Контроль цвета Настраиваемый цвет диаграммы гистрограммы. |
3 | Управление бакетами Настраиваемые сегменты диаграммы гистрограммы. |
4 | Несколько серий Диаграмма гистограммы, имеющая несколько серий. |
Линейные диаграммы используются для построения линейных диаграмм. В этом разделе мы собираемся обсудить следующие типы линейных диаграмм.
Старший Нет | Тип диаграммы / Описание |
---|---|
1 | Базовая линия Базовый линейный график. |
2 | С видимыми точками Диаграмма с видимыми точками данных. |
3 | Настраиваемый цвет фона Диаграмма с настраиваемым цветом фона. |
4 | Настраиваемый цвет линии График с настраиваемым цветом линии. |
5 | Настраиваемые метки осей и делений Диаграмма с настраиваемыми осями и метками. |
6 | Перекрестие Линейные диаграммы, показывающие перекрестие в точке данных при выборе. |
7 | Настраиваемый стиль линии График с настраиваемым цветом линии. |
8 | Графики с изогнутыми линиями График с плавными кривыми линиями. |
Карта Google Map Chart использует Google Maps API для отображения карты. Значения данных отображаются на карте в виде маркеров. Значения данных могут быть координатами (пары долгота-широта) или фактическими адресами. Карта будет соответствующим образом масштабирована, чтобы включить в нее все идентифицированные точки.
Старший Нет | Тип диаграммы / Описание |
---|---|
1 | Базовая карта Базовая карта Google. |
2 | Карта с использованием широты / долготы Карта с местоположениями, указанными с помощью широты и долготы. |
Ниже приведен пример организационной схемы.
Организационная диаграмма помогает в отображении иерархии узлов, используемых для изображения отношений высшего и подчиненного уровня в организации. Например, генеалогическое древо - это разновидность организационной схемы. Мы уже видели конфигурации, используемые для рисования диаграммы в главе Синтаксис конфигурации Google Charts . Теперь давайте посмотрим на пример организационной схемы.
Конфигурации
Мы использовали OrgChart класс, чтобы показать диаграмму организации.
type='OrgChart';
пример
app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = '';
type = 'OrgChart';
data = [
[{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', '']
];
columnNames = ["Name","Manager","Tooltip"];
options = {
allowHtml: true
};
width = 550;
height = 400;
}
Результат
Проверьте результат.
Круговые диаграммы используются для построения круговых диаграмм. В этом разделе мы собираемся обсудить следующие типы круговых диаграмм.
Старший Нет | Тип диаграммы / Описание |
---|---|
1 | Обычный пирог Базовая круговая диаграмма. |
2 | Пончиковая диаграмма Пончиковая диаграмма. |
3 | 3D круговая диаграмма 3D круговая диаграмма. |
4 | Круговая диаграмма с разнесенными фрагментами Круговая диаграмма с разнесенными фрагментами. |
Диаграмма Сэнки - это инструмент визуализации, который используется для изображения перехода от одного набора значений к другому. Связанные объекты называются узлами, а соединения - ссылками. Санки используются для отображения сопоставления «многие ко многим» между двумя доменами или несколькими путями через набор этапов.
Старший Нет | Тип диаграммы / Описание |
---|---|
1 | Базовая диаграмма Санки Базовая диаграмма Санки. |
2 | Многоуровневая диаграмма Санки Многоуровневая диаграмма Санки. |
3 | Настройка диаграммы Санки Индивидуальная диаграмма Санки. |
Ниже приведен пример точечной диаграммы.
Мы уже видели конфигурации, используемые для рисования диаграммы в главе Синтаксис конфигурации Google Charts . Теперь давайте посмотрим на пример точечной диаграммы.
Конфигурации
Мы использовали ScatterChart класс, чтобы показать диаграмму разброса.
type = 'ScatterChart';
пример
app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'Age vs Weight';
type='ScatterChart';
data = [
[8,12],
[4, 5.5],
[11,14],
[4,5],
[3,3.5],
[6.5,7]
];
columnNames = ['Age', 'Weight'];
options = {
};
width = 550;
height = 400;
}
Результат
Проверьте результат.
Пошаговая диаграмма с областями - это диаграмма с областями, основанная на шагах. Мы собираемся обсудить следующие типы ступенчатых диаграмм с областями.
Старший Нет | Тип диаграммы / Описание |
---|---|
1 | Базовая ступенчатая диаграмма Базовая ступенчатая диаграмма с областями. |
2 | Составная ступенчатая диаграмма Диаграмма с накоплением ступенчатых областей. |
Табличная диаграмма помогает в отображении таблицы, которую можно сортировать и разбивать на страницы. Ячейки таблицы можно отформатировать с помощью строк формата или путем прямой вставки HTML в качестве значений ячеек. По умолчанию числовые значения выравниваются по правому краю; логические значения отображаются как галочки или крестики. Пользователи могут выбирать отдельные строки с помощью клавиатуры или мыши. Заголовки столбцов можно использовать для сортировки. Строка заголовка остается неизменной во время прокрутки. Таблица запускает события, соответствующие взаимодействию с пользователем.
Мы уже видели конфигурации, используемые для рисования диаграммы в главе Синтаксис конфигурации Google Charts . Теперь давайте посмотрим на пример табличной диаграммы.
Конфигурации
Мы использовали Table класс, чтобы показать диаграмму таблицы.
type = 'Table';
пример
app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = "";
type = 'Table';
data = [
['Mike', {v: 10000, f: '$10,000'}, true],
['Jim', {v:8000, f: '$8,000'}, false],
['Alice', {v: 12500, f: '$12,500'}, true],
['Bob', {v: 7000, f: '$7,000'}, true]
];
columnNames = ["Name", "Salary","Full Time Employee"];
options = {
alternatingRowStyle:true,
showRowNumber:true
};
width = 550;
height = 400;
}
Результат
Проверьте результат.
TreeMap - это визуальное представление дерева данных, в котором каждый узел может иметь ноль или более дочерних элементов и одного родителя (кроме корня). Каждый узел отображается в виде прямоугольника, его размер и цвет можно изменять в соответствии со значениями, которые мы присваиваем. Размеры и цвета оцениваются относительно всех других узлов в графе. Ниже приводится пример древовидной диаграммы.
Мы уже видели конфигурации, используемые для рисования диаграммы в главе Синтаксис конфигурации Google Charts . Теперь давайте посмотрим на пример диаграммы TreeMap.
Конфигурации
Мы использовали TreeMap для отображения диаграммы TreeMap.
type = 'TreeMap';
пример
app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = '';
type='TreeMap';
data = [
["Global",null,0,0],
["America","Global",0,0],
["Europe","Global",0,0],
["Asia","Global",0,0],
["Australia","Global",0,0],
["Africa","Global",0,0],
["USA","America",52,31],
["Mexico","America",24,12],
["Canada","America",16,-23],
["France","Europe",42,-11],
["Germany","Europe",31,-2],
["Sweden","Europe",22,-13],
["China","Asia",36,4],
["Japan","Asia",20,-12],
["India","Asia",40,63],
["Egypt","Africa",21,0],
["Congo","Africa",10,12],
["Zaire","Africa",8,10],
];
columnNames = ["Location", "Parent","Market trade volume (size)","Market increase/decrease (color)"];
options = {
minColor:"#ff7777",
midColor:'#ffff77',
maxColor:'#77ff77',
headerHeight:15,
showScale:true
};
width = 550;
height = 400;
}
Результат
Проверьте результат.