Angular Highcharts - Guia Rápido

HighChart Angular Wrapperé um componente baseado em angular de código aberto que fornece visualizações Highcharts elegantes e ricas em recursos em um aplicativo Angular e pode ser usado com componentes Angular perfeitamente. Existem capítulos que discutem todos os componentes básicos de Highcharts com exemplos adequados dentro de uma aplicação Angular.

Características

  • Compatible- Todos os navegadores modernos são compatíveis com os navegadores iPhone / iPad e Internet Explorer 6 em diante. Navegadores modernos usam SVG para a renderização de gráficos e em gráficos legados do Internet Explorer são desenhados usando VML.

  • Pure TypeScript - Nenhum JavaScript é necessário, pois a API Highcharts completa está disponível no TypeScript.

  • No Flash - Nenhum requisito de plug-ins do lado do cliente como Flash player ou Java, pois o Highcharts usa tecnologias de navegador nativas e os gráficos podem ser executados sem modificação em dispositivos móveis modernos.

  • Clean Syntax - A maioria dos métodos podem ser encadeados, portanto, as opções de configuração do gráfico podem ser gerenciadas usando uma sintaxe tão rígida quanto JSON.

  • Dynamic- Séries e pontos podem ser adicionados dinamicamente a qualquer momento após a criação do gráfico. Ganchos de eventos suportados. As interações do servidor são suportadas.

  • Documented - APIs Highcharts são completamente documentadas com vários exemplos de código e sintaxe.

Este tutorial irá guiá-lo sobre como preparar um ambiente de desenvolvimento para iniciar seu trabalho com Highcharts e Angular Framework. Neste capítulo, discutiremos a configuração do ambiente necessária para o Angular 6. Para instalar o Angular 6, precisamos do seguinte -

  • Nodejs
  • Npm
  • CLI Angular
  • IDE para escrever seu código

Nodejs deve ser maior que 8,11 e npm deve ser maior que 5,6.

Nodejs

Para verificar se nodejs está instalado em seu sistema, digite node -vno terminal. Isso o ajudará a ver a versão do nodejs atualmente instalado em seu sistema.

C:\>node -v
v8.11.3

Se não imprimir nada, instale nodejs em seu sistema. Para instalar o nodejs, vá a página inicialhttps://nodejs.org/en/download/ de nodejs e instale o pacote com base em seu sistema operacional.

A página inicial do nodejs será semelhante à seguinte -

Com base no seu sistema operacional, instale o pacote necessário. Assim que o nodejs for instalado, o npm também será instalado junto com ele. Para verificar se o npm está instalado ou não, digite npm -v no terminal. Ele deve exibir a versão do npm.

C:\>npm -v
5.6.0

As instalações do Angular 6 são muito simples com a ajuda do angular CLI. Visite a homepagehttps://cli.angular.io/ de angular para obter a referência do comando.

Tipo npm install -g @angular/cli, para instalar o angular cli em seu sistema.

Você obterá a instalação acima em seu terminal, assim que o Angular CLI for instalado. Você pode usar qualquer IDE de sua escolha, ou seja, WebStorm, Atom, Visual Studio Code, etc.

Instale Highcharts

Execute o seguinte comando para instalar o módulo highchart no projeto criado.

highchartsApp>npm install highcharts --save
+ [email protected]
added 1 package in 137.534s

Execute o seguinte comando para instalar o módulo wrapper highchart no projeto criado.

highchartsApp>npm install highcharts-angular --save
+ [email protected]
added 1 package in 20.93s

Adicione a seguinte entrada no arquivo highchartsApp.module.ts

import { HighchartsChartComponent } from 'highcharts-angular';
declarations: [
   ...
   HighchartsChartComponent    
],

Neste capítulo, mostraremos a configuração necessária para desenhar um gráfico usando a API Highcharts no Angular.

Etapa 1 - Criar Aplicação Angular

Siga as etapas a seguir para atualizar o aplicativo Angular que criamos no Angular 6 - capítulo Configuração do projeto -

Degrau Descrição
1 Crie um projeto com o nome highchartsApp conforme explicado no capítulo Angular 6 - Configuração do projeto .
2 Modifique app.module.ts , app.component.ts e app.component.html conforme explicado abaixo. Mantenha o resto dos arquivos inalterados.
3 Compile e execute o aplicativo para verificar o resultado da lógica implementada.

A seguir está o conteúdo do descritor do módulo modificado app.module.ts.

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { HighchartsChartComponent } from 'highcharts-angular';
@NgModule({
   declarations: [
      AppComponent,
      HighchartsChartComponent    
   ],
   imports: [
      BrowserModule,
   ],
   providers: [],
   bootstrap: [AppComponent]
})
export class AppModule { }

A seguir está o conteúdo do arquivo host HTML modificado app.component.html.

<highcharts-chart
   [Highcharts] = "highcharts" 
   [options] = "chartOptions" 
   style = "width: 100%; height: 400px; display: block;">
</highcharts-chart>

Veremos o app.component.ts atualizado no final, após entender as configurações.

Etapa 2 - Configurações de uso

Criar Highcharts e criar chartOptions

highcharts = Highcharts;
   chartOptions = {   
}

Criar gráfico

Configure o tipo, título e subtítulo do gráfico usando chartOptions.

chart: {
   type: "spline"
},

xAxis

Configure o ticker a ser exibido no eixo X usando chartOptions.

xAxis:{
   categories:["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
},

yAxis

Configure o título a ser exibido no eixo Y usando chartOptions.

yAxis: {          
   title:{
      text:"Temperature °C"
   } 
},

dica

Configure a dica de ferramenta. Coloque o sufixo a ser adicionado após o valor (eixo y) usando chartOptions.

tooltip: {
   valueSuffix:" °C"
},

Series

Configure os dados a serem exibidos no gráfico usando chartOptions. Série é uma matriz em que cada elemento dessa matriz representa uma única linha no gráfico.

series: [
   {
      name: 'Tokyo', 
      data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2,26.5, 23.3, 18.3, 13.9, 9.6]
   },
   {
      name: 'New York', 
      data: [-0.2, 0.8, 5.7, 11.3, 17.0, 22.0, 24.8,24.1, 20.1, 14.1, 8.6, 2.5]
   },
   {
      name: 'Berlin',
      data: [-0.9, 0.6, 3.5, 8.4, 13.5, 17.0, 18.6, 17.9, 14.3, 9.0, 3.9, 1.0]
   },
   {
      name: 'London',
      data: [3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0, 16.6, 14.2, 10.3, 6.6, 4.8]
   }
]

Exemplo

Considere o seguinte exemplo para entender melhor a sintaxe de configuração -

app.component.ts

import { Component } from '@angular/core';
import * as Highcharts from 'highcharts';
@Component({
   selector: 'app-root',
   templateUrl: './app.component.html',
   styleUrls: ['./app.component.css']
})
export class AppComponent {
   highcharts = Highcharts;
   chartOptions = {   
      chart: {
         type: "spline"
      },
      title: {
         text: "Monthly Average Temperature"
      },
      subtitle: {
         text: "Source: WorldClimate.com"
      },
      xAxis:{
         categories:["Jan", "Feb", "Mar", "Apr", "May", "Jun",
            "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
      },
      yAxis: {          
         title:{
            text:"Temperature °C"
         } 
      },
      tooltip: {
         valueSuffix:" °C"
      },
      series: [
         {
            name: 'Tokyo',
            data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2,26.5, 23.3, 18.3, 13.9, 9.6]
         },
         {
            name: 'New York',
            data: [-0.2, 0.8, 5.7, 11.3, 17.0, 22.0, 24.8,24.1, 20.1, 14.1, 8.6, 2.5]
         },
         {
            name: 'Berlin',
            data: [-0.9, 0.6, 3.5, 8.4, 13.5, 17.0, 18.6, 17.9, 14.3, 9.0, 3.9, 1.0]
         },
         {
            name: 'London',
            data: [3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0, 16.6, 14.2, 10.3, 6.6, 4.8]
         }
      ]
   };
}

Resultado

Verifique o resultado.

Os gráficos de linha são usados ​​para desenhar gráficos baseados em linha / spline. Nesta seção, discutiremos os diferentes tipos de gráficos baseados em linhas e splines.

Sr. Não Tipo e descrição do gráfico
1 Linha básica

Gráfico de linha básico.

2 Com rótulos de dados

Gráfico com rótulos de dados.

3 Séries temporais, com zoom

Gráfico com séries temporais.

4 Spline com eixos invertidos

Gráfico spline com eixos invertidos.

5 Spline com símbolos

Gráfico spline usando símbolos para calor / chuva.

6 Spline com bandas de enredo

Gráfico spline com bandas de plotagem.

Os gráficos de área são usados ​​para desenhar gráficos baseados em área. Nesta seção, discutiremos os diferentes tipos de gráficos baseados em área.

Sr. Não. Tipo e descrição do gráfico
1 Área Básica

Gráfico de área básico.

2 Área com valores negativos

Gráfico de área com valores negativos.

3 Área empilhada

Gráfico com áreas empilhadas umas sobre as outras.

4 Área percentual

Gráfico com dados em termos percentuais.

5 Área com pontos faltando

Gráfico com pontos ausentes nos dados.

6 Eixos invertidos

Área usando eixos invertidos.

7 Area-spline

Gráfico de área usando spline.

Os gráficos de barras são usados ​​para desenhar gráficos baseados em barras. Nesta seção, discutiremos os diferentes tipos de gráficos baseados em barras.

Sr. Não. Tipo e descrição do gráfico
1 Barra Básica

Gráfico de barras básico.

2 Barra Empilhada

Gráfico de barras com barras empilhadas umas sobre as outras.

3 Gráfico de barras com valores negativos

Gráfico de barras com valores negativos.

Os gráficos de colunas são usados ​​para desenhar gráficos baseados em colunas. Nesta seção, discutiremos os diferentes tipos de gráficos baseados em colunas.

Sr. Não. Tipo e descrição do gráfico
1 Coluna Básica

Gráfico de colunas básico.

2 Coluna com valores negativos

Gráfico de colunas com valores negativos.

3 Coluna empilhada

Gráfico com colunas empilhadas umas sobre as outras.

4 Coluna empilhada e agrupada

Gráfico com coluna em formato empilhado e agrupado.

5 Coluna com porcentagem empilhada

Gráfico com porcentagem empilhada.

6 Coluna com rótulos girados

Gráfico de colunas com rótulos girados em colunas.

7 Faixa de coluna

Gráfico de colunas usando intervalos.

GWP Highcharts - gráficos de pizza

Os gráficos de pizza são usados ​​para desenhar gráficos de pizza. Nesta seção, discutiremos os diferentes tipos de gráficos de pizza.

Sr. Não. Tipo e descrição do gráfico
1 Torta Básica

Gráfico de pizza básico.

2 Torta com Lendas

Gráfico de pizza com legendas.

3 Donut Chart

Gráfico Donut.

A seguir está um exemplo de gráfico de dispersão básico.

Já vimos a configuração usada para desenhar um gráfico no capítulo Highcharts Configuration Syntax .

Um exemplo de gráfico de dispersão básico é fornecido abaixo.

Configurações

Vamos agora ver as configurações / etapas adicionais realizadas.

Series

Configure o tipo de gráfico para ser baseado em dispersão. series.typedecide o tipo de série do gráfico. Aqui, o valor padrão é "linha".

var chart = {
   type: 'scatter',
   zoomType: 'xy'
};

Exemplo

app.component.ts

import { Component } from '@angular/core';
import * as Highcharts from 'highcharts';
@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
   highcharts = Highcharts;
   chartOptions = {         
      title : {
         text: 'Scatter plot'   
      },      
      series : [{
         type: 'scatter',
         zoomType:'xy',
         name: 'Browser share',
         data: [ 1, 1.5, 2.8, 3.5, 3.9, 4.2 ]
      }]
   };
}

Resultado

Verifique o resultado.

Os gráficos dinâmicos são usados ​​para desenhar gráficos baseados em dados onde os dados podem mudar após a renderização do gráfico. Nesta seção, discutiremos os diferentes tipos de gráfico dinâmico.

Sr. Não. Tipo e descrição do gráfico
1 Spline atualizando a cada segundo

Gráfico de spline atualizando a cada segundo.

2 Clique para adicionar um ponto

Gráfico com capacidade de adição de pontos.

Gráficos de combinação são usados ​​para desenhar gráficos mistos; por exemplo, gráfico de barras com gráfico de pizza. Nesta seção, discutiremos os diferentes tipos de gráficos de combinações.

Sr. Não. Tipo e descrição do gráfico
1 Coluna, Linha e Torta

Gráfico com coluna, linha e pizza.

2 Eixos duplos, linha e coluna

Gráfico com eixo duplo, linha e coluna.

3 Multiple Axes

Gráfico com vários eixos.

4 Dispersão com linha de regressão

Gráfico de dispersão com linha de regressão.

Os gráficos 3D são usados ​​para desenhar gráficos tridimensionais. Nesta seção, discutiremos os diferentes tipos de gráficos 3D.

Sr. Não. Tipo e descrição do gráfico
1 Coluna 3D

Gráfico de colunas 3D.

2 3D Scatter

Gráfico de dispersão 3D.

3 3D Pie

Gráfico de pizza 3D.

Os gráficos de mapas são usados ​​para desenhar mapas de calor ou gráficos de mapas em árvore. Nesta seção, discutiremos os diferentes tipos de gráficos de mapas.

Sr. Não. Tipo e descrição do gráfico
1 Mapa de calor

Mapa de calor.

2 Mapa de Árvores

Mapa da árvore.