Highcharts - Guida rapida
Highchartsè una libreria di grafici basata su JavaScript puro pensata per migliorare le applicazioni web aggiungendo funzionalità di creazione di grafici interattivi. Supporta un'ampia gamma di grafici. I grafici vengono disegnati utilizzando SVG nei browser standard come Chrome, Firefox, Safari, Internet Explorer (IE). Nella versione precedente di IE 6, VML viene utilizzato per disegnare la grafica.
Caratteristiche di Highcharts Library
Parliamo ora di alcune importanti caratteristiche della libreria Highcharts.
Compatability - Funziona perfettamente su tutti i principali browser e piattaforme mobili come Android e iOS.
Multitouch Support - Supporta il multitouch su piattaforme basate su touch screen come Android e iOS. Ideale per iPhone / iPad e smartphone / tablet basati su Android.
Free to Use - Open source ed è gratuito da usare per scopi non commerciali.
Lightweight - La libreria principale di highcharts.js con una dimensione di quasi 35 KB, è una libreria estremamente leggera.
Simple Configurations - Utilizza json per definire varie configurazioni dei grafici e molto facile da imparare e da utilizzare.
Dynamic - Permette di modificare il grafico anche dopo la generazione del grafico.
Multiple axes- Non limitato agli assi x, y. Supporta più assi sui grafici.
Configurable tooltips- Il suggerimento viene visualizzato quando un utente passa il mouse su un punto qualsiasi di un grafico. Highcharts fornisce un formattatore integrato di tooltip o un formattatore callback per controllare il tooltip a livello di codice.
DateTime support- Gestisci la data e l'ora in modo speciale. Fornisce numerosi controlli integrati su categorie datate.
Export - Esporta il grafico in formato PDF / PNG / JPG / SVG abilitando la funzione di esportazione.
Print - Stampa grafico utilizzando la pagina web.
Zoomablity - Supporta lo zoom del grafico per visualizzare i dati in modo più preciso.
External data- Supporta il caricamento dinamico dei dati dal server. Fornisce il controllo sui dati utilizzando le funzioni di callback.
Text Rotation - Supporta la rotazione delle etichette in qualsiasi direzione.
Tipi di grafici supportati
La libreria Highcharts fornisce i seguenti tipi di grafici:
Sr.No. | Tipo e descrizione del grafico |
---|---|
1 | Line Charts Utilizzato per disegnare grafici basati su linee / spline. |
2 | Area Charts Utilizzato per disegnare grafici area wise. |
3 | Pie Charts Utilizzato per disegnare grafici a torta. |
4 | Scatter Charts Utilizzato per disegnare grafici sparsi. |
5 | Bubble Charts Utilizzato per disegnare grafici a bolle. |
6 | Dynamic Charts Utilizzato per disegnare grafici dinamici in cui l'utente può modificare i grafici. |
7 | Combinations Utilizzato per disegnare combinazioni di varietà di grafici. |
8 | 3D Charts Utilizzato per disegnare grafici 3D. |
9 | Angular Gauges Utilizzato per disegnare grafici di tipo tachimetro. |
10 | Heat Maps Utilizzato per disegnare mappe di calore. |
11 | Tree Maps Utilizzato per disegnare mappe ad albero. |
Nei nostri capitoli successivi, discuteremo ogni tipo di grafici sopra menzionati in dettaglio con esempi.
Licenza
Highcharts è open source ed è gratuito per scopi non commerciali. Per utilizzare Highcharts in progetti commerciali, segui il link - Licenza e prezzi
In questo capitolo, discuteremo come impostare la libreria Highcharts da utilizzare nello sviluppo di applicazioni web.
Highcharts richiede jQuery come dipendenza. Per prima cosa installeremo la libreria jQuery e poi la libreria Highcharts.
Installa jQuery
Esistono due modi per utilizzare jQuery.
Download- Scaricalo localmente da jQuery.com e usalo .
CDN access- Hai anche accesso a un CDN. Il CDN ti darà accesso in tutto il mondo ai data center regionali; in questo caso, host di Google. Ciò significa che l'utilizzo di CDN sposta la responsabilità di ospitare i file dai tuoi server a una serie di quelli esterni. Questo offre anche un vantaggio che se il visitatore della tua pagina web ha già scaricato una copia di jQuery dalla stessa CDN, non dovrà essere scaricata nuovamente.
Utilizzando jQuery scaricato
Includere il file JavaScript jQuery nella pagina HTML utilizzando il seguente script:
<head>
<script src = "/jquery/jquery.min.js"></script>
</head>
Utilizzando CDN
Stiamo utilizzando le versioni CDN della libreria jQuery in questo tutorial.
Includere il file JavaScript jQuery nella pagina HTML utilizzando il seguente script:
<head>
<script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js">
</script>
</head>
Installa Highcharts
I seguenti sono i due modi per utilizzare Highcharts.
Download - Scaricalo localmente da
highcharts.com e usalo. CDN access- Hai anche accesso a un CDN. Il CDN ti darà accesso in tutto il mondo ai data center regionali; in questo caso, l'host di Highcharts - Code.Highcharts.Com.
Utilizzo di Highcharts scaricati
Includere il file JavaScript di Highcharts nella pagina HTML utilizzando il seguente script:
<head>
<script src = "/highcharts/highcharts.js"></script>
</head>
Utilizzando CDN
Stiamo utilizzando le versioni CDN della libreria Highcharts durante questo tutorial.
Includere il file JavaScript di Highcharts nella pagina HTML utilizzando il seguente script:
<head>
<script src = "https://code.highcharts.com/highcharts.js"></script>
</head>
In questo capitolo, mostreremo la configurazione richiesta per disegnare un grafico utilizzando l'API Highcharts.
Passaggio 1: crea una pagina HTML
Crea una pagina HTML con le librerie jQuery e Highcharts javascript.
HighchartsTestHarness.htm
<html>
<head>
<title>Highcharts Tutorial</title>
<script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js">
</script>
<script src = "https://code.highcharts.com/highcharts.js"></script>
</head>
<body>
<div id = "container" style = "width: 550px; height: 400px; margin: 0 auto"></div>
<script language = "JavaScript">
$(document).ready(function() {
});
</script>
</body>
</html>
Qui il file container div viene utilizzato per contenere il grafico disegnato utilizzando la libreria Highcharts.
Passaggio 2: creare configurazioni
La libreria Highcharts utilizza configurazioni molto semplici utilizzando la sintassi json.
$('#container').highcharts(json);
Qui json rappresenta i dati e la configurazione json che la libreria Highcharts utilizza per disegnare un grafico all'interno del div contenitore utilizzando il metodo highcharts (). Ora configureremo i vari parametri per creare la stringa json richiesta.
titolo
Configura il titolo del grafico.
var title = {
text: 'Monthly Average Temperature'
};
sottotitolo
Configura il sottotitolo del grafico.
var subtitle = {
text: 'Source: WorldClimate.com'
};
xAxis
Configura il ticker da visualizzare sull'asse X.
var xAxis = {
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun'
,'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
};
yAxis
Configurare il titolo, le linee del grafico da visualizzare sull'asse Y.
var yAxis = {
title: {
text: 'Temperature (\xB0C)'
},
plotLines: [{
value: 0,
width: 1,
color: '#808080'
}]
};
tooltip
Configura la descrizione comando. Metti il suffisso da aggiungere dopo il valore (asse y).
var tooltip = {
valueSuffix: '\xB0C'
}
leggenda
Configura la legenda da visualizzare sul lato destro del grafico insieme ad altre proprietà.
var legend = {
layout: 'vertical',
align: 'right',
verticalAlign: 'middle',
borderWidth: 0
};
serie
Configurare i dati da visualizzare sul grafico. La serie è un array in cui ogni elemento di questo array rappresenta una singola riga sul grafico.
var 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]
}
];
Passaggio 3: crea i dati json
Combina tutte le configurazioni.
var json = {};
json.title = title;
json.subtitle = subtitle;
json.xAxis = xAxis;
json.yAxis = yAxis;
json.tooltip = tooltip;
json.legend = legend;
json.series = series;
Passaggio 4: disegna il grafico
$('#container').highcharts(json);
Esempio
Considera il seguente esempio per comprendere ulteriormente la sintassi della configurazione:
highcharts_configuration.htm
<html>
<head>
<title>Highcharts Tutorial</title>
<script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js">
</script>
<script src = "https://code.highcharts.com/highcharts.js"></script>
</head>
<body>
<div id = "container" style = "width: 550px; height: 400px; margin: 0 auto"></div>
<script language = "JavaScript">
$(document).ready(function() {
var title = {
text: 'Monthly Average Temperature'
};
var subtitle = {
text: 'Source: WorldClimate.com'
};
var xAxis = {
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
};
var yAxis = {
title: {
text: 'Temperature (\xB0C)'
},
plotLines: [{
value: 0,
width: 1,
color: '#808080'
}]
};
var tooltip = {
valueSuffix: '\xB0C'
}
var legend = {
layout: 'vertical',
align: 'right',
verticalAlign: 'middle',
borderWidth: 0
};
var 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]
}
];
var json = {};
json.title = title;
json.subtitle = subtitle;
json.xAxis = xAxis;
json.yAxis = yAxis;
json.tooltip = tooltip;
json.legend = legend;
json.series = series;
$('#container').highcharts(json);
});
</script>
</body>
</html>
Risultato
Verifica il risultato.
I grafici a linee vengono utilizzati per disegnare grafici basati su linee / spline. In questa sezione, discuteremo i diversi tipi di grafici basati su linee e spline.
Sr.No. | Tipo e descrizione del grafico |
---|---|
1 | Linea di base Grafico a linee di base. |
2 | Con etichette dati Grafico con etichette dati. |
3 | Dati caricati Ajax, punti cliccabili Grafico disegnato dopo aver recuperato i dati dal server. |
4 | Serie storica, ingrandibile Grafico con serie temporali. |
5 | Scanalatura con assi invertiti Grafico spline con assi invertiti. |
6 | Spline con simboli Grafico a spline che utilizza simboli per caldo / pioggia. |
7 | Spline con bande di trama Grafico spline con bande di trama. |
8 | Dati temporali con intervalli irregolari Grafico di un ampio set di dati basati sul tempo. |
9 | Asse logaritmico Grafico raffigurante l'asse logaritmico. |
I grafici ad area vengono utilizzati per disegnare grafici basati su area. In questa sezione, discuteremo i diversi tipi di grafici basati su area.
Sr.No. | Tipo e descrizione del grafico |
---|---|
1 | Area di base Grafico ad area di base. |
2 | Area con valori negativi Grafico ad area con valori negativi. |
3 | Area in pila Grafico con aree impilate l'una sull'altra. |
4 | Area percentuale Grafico con dati in percentuale. |
5 | Area con punti mancanti Grafico con punti mancanti nei dati. |
6 | Assi invertiti Area che utilizza assi invertiti. |
7 | Area-spline Grafico ad area utilizzando spline. |
8 | Gamma di area Grafico ad area che utilizza intervalli. |
9 | Gamma e linea dell'area Grafico ad area utilizzando intervallo e linea. |
I grafici a barre vengono utilizzati per disegnare grafici basati su aree. In questa sezione, discuteremo i diversi tipi di grafici a barre.
Sr.No. | Tipo e descrizione del grafico |
---|---|
1 | Bar di base Grafico a barre di base. |
2 | Barra in pila Grafico a barre con barre impilate l'una sull'altra. |
3 | Area in pila negativa Grafico a barre con stack negativo. |
I grafici a colonne vengono utilizzati per disegnare grafici basati su colonne. In questa sezione, discuteremo i diversi tipi di grafici basati su colonne.
Sr.No. | Tipo e descrizione del grafico |
---|---|
1 | Colonna di base Istogramma di base. |
2 | Colonna con valori negativi Grafico a colonne con valori negativi. |
3 | Colonna in pila Grafico con colonne impilate l'una sull'altra. |
4 | Colonna in pila e raggruppata Grafico con colonna in forma impilata e raggruppata. |
5 | Colonna con percentuale in pila Grafico con percentuale in pila. |
6 | Colonna con etichette ruotate Istogramma con etichette ruotate in colonne. |
7 | Colonna con drilldown Istogramma con capacità di drill down. |
8 | Colonna con posizionamento fisso Istogramma con posizionamento fisso. |
9 | Dati definiti nella tabella HTML Grafico a colonne che utilizza i dati definiti nella tabella HTML. |
10 | Intervallo di colonne Istogramma che utilizza intervalli. |
I grafici a torta vengono utilizzati per disegnare grafici a torta. In questa sezione, discuteremo i diversi tipi di grafici a torta.
Sr.No. | Tipo e descrizione del grafico |
---|---|
1 | Torta di base Grafico a torta di base. |
2 | Torta con leggende Grafico a torta con leggende. |
3 | Grafico a ciambella Grafico a ciambella. |
4 | Ciambella semicircolare Grafico a ciambella semicircolare. |
5 | Torta con drill down Grafico a torta con capacità di drill down. |
6 | Grafico a torta con gradiente Grafico a torta con riempimento sfumato. |
7 | Grafico a torta con monocromatico Grafico a torta con riempimento monocromatico. |
I grafici a dispersione vengono utilizzati per disegnare grafici a dispersione. In questa sezione, discuteremo i diversi tipi di grafici a dispersione.
Sr.No. | Tipo e descrizione del grafico |
---|---|
1 | Grafico a dispersione Grafico a dispersione. |
I grafici a bolle vengono utilizzati per disegnare grafici a bolle. In questa sezione, discuteremo i diversi tipi di grafici basati su bolle.
Sr.No. | Tipo e descrizione del grafico |
---|---|
1 | Grafico a bolle Grafico a bolle. |
2 | Grafico a bolle 3D Grafico a bolle 3D. |
I grafici dinamici vengono utilizzati per disegnare grafici basati sui dati in cui i dati possono cambiare dopo il rendering del grafico. In questa sezione, discuteremo i diversi tipi di grafici dinamici.
Sr.No. | Tipo e descrizione del grafico |
---|---|
1 | Spline che si aggiorna ogni secondo Grafico a spline che si aggiorna ogni secondo. |
2 | Fare clic per aggiungere un punto Grafico con capacità di aggiunta di punti. |
I grafici a combinazione vengono utilizzati per disegnare grafici misti; ad esempio, grafico a barre con grafico a torta. In questa sezione, discuteremo i diversi tipi di grafici di combinazioni.
Sr.No. | Tipo e descrizione del grafico |
---|---|
1 | Colonna, linea e torta Grafico con colonna, linea e torta. |
2 | Doppio asse, linea e colonna Grafico con due assi, linea e colonna. |
3 | Assi multipli Grafico con più assi. |
4 | Scatter con la linea di regressione Grafico a dispersione con linea di regressione. |
I grafici 3D vengono utilizzati per disegnare grafici tridimensionali. In questa sezione, discuteremo i diversi tipi di grafici 3D.
Sr.No. | Tipo e descrizione del grafico |
---|---|
1 | Colonna 3D Grafico a colonne 3D. |
2 | Colonna 3D con null Istogramma 3D con valori nulli e 0. |
3 | Colonna 3D con impilamento Istogramma 3D con impilamento e raggruppamento. |
4 | Torta 3D Grafico a torta 3D. |
5 | Ciambella 3D Grafico a ciambella 3D. |
I grafici Indicatori angolari vengono utilizzati per disegnare grafici di tipo indicatore / indicatore. In questa sezione, discuteremo i diversi tipi di grafici degli indicatori angolari.
Sr.No. | Tipo e descrizione del grafico |
---|---|
1 | Calibro angolare Grafico a scartamento angolare. |
2 | Calibro solido Grafico a scartamento solido. |
3 | Orologio Orologio. |
4 | Manometro con doppio asse Gauge Chart con doppi assi. |
5 | VU Meter Grafico VU Meter. |
I grafici Heat Map vengono utilizzati per disegnare grafici di tipo Heat Map. In questa sezione, discuteremo i diversi tipi di mappe di calore.
Sr.No. | Tipo e descrizione del grafico |
---|---|
1 | Mappa di calore Mappa di calore. |
2 | Mappa termica grande Mappa termica grande. |
I grafici della mappa ad albero vengono utilizzati per disegnare grafici di tipo mappa ad albero. In questa sezione discuteremo i diversi tipi di mappe ad albero.
Sr.No. | Tipo e descrizione del grafico |
---|---|
1 | Mappa dell'albero Mappa ad albero con asse dei colori. |
2 | Mappa ad albero con livelli Mappa ad albero con livelli. |
3 | Mappa ad albero grande Mappa ad albero grande. |