Highcharts de GWT - Guía rápida
GWT Highcharts es una biblioteca de código abierto basada en Java que proporciona visualizaciones Highcharts elegantes y ricas en funciones dentro de una aplicación GWT y se puede utilizar junto con las bibliotecas de widgets de GWT.
Caracteristicas
Compatible- Todos los navegadores modernos son compatibles con los navegadores de iPhone / iPad e Internet Explorer 6 en adelante. Los navegadores modernos usan SVG para la representación de gráficos y, en el Internet Explorer heredado, los gráficos se dibujan usando VML.
Pure Java - No se requiere JavaScript ya que la API Highcharts completa está disponible en los métodos Java.
No Flash - No se requieren complementos del lado del cliente como Flash Player o Java, ya que Highcharts utiliza tecnologías de navegador nativas y los gráficos se pueden ejecutar sin modificaciones en dispositivos móviles modernos.
Clean Syntax - La mayoría de los métodos son encadenables, por lo que las opciones de configuración del gráfico se pueden administrar utilizando una sintaxis tan ajustada como JSON.
Dynamic- Las series y los puntos se pueden agregar dinámicamente en cualquier momento después de la creación del gráfico. Admite ganchos de eventos. Se admiten las interacciones del servidor.
Documented - Las API de Highcharts están completamente documentadas con numerosos ejemplos de código y sintaxis.
Este tutorial lo guiará sobre cómo preparar un entorno de desarrollo para comenzar su trabajo con Highcharts y GWT Framework. Este tutorial también le enseñará cómo configurar JDK, Tomcat y Eclipse en su máquina antes de configurar GWT Framework -
Requisitos del sistema
GWT requiere JDK 1.6 o superior, por lo que el primer requisito es tener JDK instalado en su máquina.
JDK | 1.6 o superior. |
---|---|
Memoria | ningún requisito mínimo. |
Espacio del disco | ningún requisito mínimo. |
Sistema operativo | ningún requisito mínimo. |
Siga los pasos dados para configurar su entorno para comenzar con el desarrollo de aplicaciones GWT.
Paso 1: verificar la instalación de Java en su máquina
Ahora abra la consola y ejecute el siguiente comando de Java.
SO | Tarea | Mando |
---|---|---|
Windows | Abrir consola de comandos | c: \> java -version |
Linux | Terminal de comando abierto | $ java -version |
Mac | Terminal abierta | máquina: ~ joseph $ java -version |
Verifiquemos la salida para todos los sistemas operativos.
No Señor. | SO y salida generada |
---|---|
1 |
Windows versión de Java "1.6.0_21" Entorno de ejecución Java (TM) SE (compilación 1.6.0_21-b07) VM de cliente Java HotSpot (TM) (compilación 17.0-b17, modo mixto, uso compartido) |
2 |
Linux versión de Java "1.6.0_21" Entorno de ejecución Java (TM) SE (compilación 1.6.0_21-b07) Ava HotSpot (TM) Client VM (compilación 17.0-b17, modo mixto, uso compartido) |
3 |
Mac versión de Java "1.6.0_21" Entorno de ejecución Java (TM) SE (compilación 1.6.0_21-b07) Servidor VM Java HotSpot (TM) de 64 bits (compilación 17.0-b17, modo mixto, uso compartido) |
Paso 2: configuración del kit de desarrollo de Java (JDK)
Si no tiene Java instalado, puede instalar Java Software Development Kit (SDK) desde el sitio Java de Oracle: Descargas de Java SE . Encontrará instrucciones para instalar JDK en archivos descargados, siga las instrucciones dadas para instalar y configurar la instalación. Finalmente, configure las variables de entorno PATH y JAVA_HOME para hacer referencia al directorio que contiene java y javac, normalmente java_install_dir / bin y java_install_dir respectivamente.
Selecciona el JAVA_HOMEvariable de entorno para apuntar a la ubicación del directorio base donde está instalado Java en su máquina. Por ejemplo
No Señor. | SO y salida |
---|---|
1 |
Windows Establezca la variable de entorno JAVA_HOME en C: \ Archivos de programa \ Java \ jdk1.6.0_21 |
2 |
Linux exportar JAVA_HOME = / usr / local / java-current |
3 |
Mac exportar JAVA_HOME = / Library / Java / Home |
Agregue la ubicación del compilador de Java a la ruta del sistema.
No Señor. | SO y salida |
---|---|
1 |
Windows Agregue la cadena;% JAVA_HOME% \ bin al final de la variable del sistema, Ruta. |
2 |
Linux export PATH = $ PATH: $ JAVA_HOME / bin / |
3 |
Mac no requerido |
Alternativamente, si usa un entorno de desarrollo integrado (IDE) como Borland JBuilder, Eclipse, IntelliJ IDEA o Sun ONE Studio, compile y ejecute un programa simple para confirmar que el IDE sabe dónde instaló Java; de lo contrario, realice la configuración adecuada como se indica en el documento. del IDE.
Paso 3: configurar el IDE de Eclipse
Todos los ejemplos de este tutorial se han escrito utilizando Eclipse IDE. Por lo tanto, le sugiero que tenga instalada la última versión de Eclipse en su máquina según su sistema operativo.
Para instalar Eclipse IDE, descargue los últimos binarios de Eclipse desde https://www.eclipse.org/downloads/. Una vez que descargó la instalación, descomprima la distribución binaria en una ubicación conveniente. Por ejemplo, en C: \ eclipse en Windows, o / usr / local / eclipse en Linux / Unix y finalmente configure la variable PATH de manera apropiada.
Eclipse se puede iniciar ejecutando los siguientes comandos en la máquina con Windows, o simplemente puede hacer doble clic en eclipse.exe
%C:\eclipse\eclipse.exe
Eclipse se puede iniciar ejecutando los siguientes comandos en una máquina Unix (Solaris, Linux, etc.):
$/usr/local/eclipse/eclipse
Después de un inicio exitoso, si todo está bien, debería mostrar el siguiente resultado:
Paso 4: Instale el SDK y el complemento de GWT para Eclipse
Siga las instrucciones dadas en el enlace Complemento para Eclipse (incluidos los SDK) para instalar GWT SDK y Complemento para la versión de Eclipse instalada en su máquina.
Después de una configuración exitosa para el complemento GWT, si todo está bien, debería mostrar la siguiente pantalla con Google icon marcado con un rectángulo rojo como se muestra a continuación -
Paso 5: instalar Highcharts
Descargue el último jar de Highcharts desde su página de descargas y agréguelo a la ruta de clases del proyecto.
Agregue la siguiente entrada en el archivo <nombre-proyecto> .gwt.xml
<inherits name="org.moxieapps.gwt.highcharts.Highcharts"/>
Agregue la siguiente entrada en el archivo <project-name> .html
<script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"/>
<script src = "https://code.highcharts.com/highcharts.js"/>
<script type="text/javascript" src="https://code.highcharts.com/highcharts-3d.js" />
<script type="text/javascript" src="https://code.highcharts.com/highcharts-more.js" />
<script src = "https://code.highcharts.com/modules/heatmap.js" />
<script src = "https://code.highcharts.com/modules/treemap.js" />
En este capítulo, mostraremos la configuración requerida para dibujar un gráfico usando la API Highcharts en GWT.
Paso 1: Cree la aplicación GWT
Siga los siguientes pasos para actualizar la aplicación GWT que creamos en GWT - Capítulo Crear aplicación -
Paso | Descripción |
---|---|
1 | Cree un proyecto con un nombre HelloWorld en un paquete com.tutorialspoint como se explica en el capítulo GWT - Crear aplicación . |
2 | Modifique HelloWorld.gwt.xml , HelloWorld.html y HelloWorld.java como se explica a continuación. Mantenga el resto de los archivos sin cambios. |
3 | Compile y ejecute la aplicación para verificar el resultado de la lógica implementada. |
A continuación se muestra el contenido del descriptor de módulo modificado src/com.tutorialspoint/HelloWorld.gwt.xml.
<?xml version = "1.0" encoding = "UTF-8"?>
<module rename-to = 'helloworld'>
<inherits name = 'com.google.gwt.user.User'/>
<inherits name = 'com.google.gwt.user.theme.clean.Clean'/>
<entry-point class = 'com.tutorialspoint.client.HelloWorld'/>
<inherits name="org.moxieapps.gwt.highcharts.Highcharts"/>
<source path = 'client'/>
<source path = 'shared'/>
</module>
A continuación se muestra el contenido del archivo de host HTML modificado war/HelloWorld.html.
<html>
<head>
<title>GWT Highcharts Showcase</title>
<link rel = "stylesheet" href = "HelloWorld.css"/>
<script language = "javascript" src = "helloworld/helloworld.nocache.js">
<script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js" />
<script src = "https://code.highcharts.com/highcharts.js" />
</script>
</head>
<body>
</body>
</html>
Veremos el HelloWorld.java actualizado al final después de comprender las configuraciones.
Paso 2: crear configuraciones
Crear gráfico
Configure el tipo, título y subtítulo del gráfico.
Chart chart = new Chart()
.setType(Type.SPLINE)
.setChartTitleText("Monthly Average Temperature")
.setChartSubtitleText("Source: WorldClimate.com");
xAxis
Configure el ticker para que se muestre en el eje X.
XAxis xAxis = chart.getXAxis();
xAxis.setCategories("Jan", "Feb", "Mar", "Apr", "May", "Jun",
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec");
yAxis
Configure el título, las líneas de trazado que se mostrarán en el eje Y.
YAxis yAxis = chart.getYAxis();
yAxis.setAxisTitleText("Temperature °C");
yAxis.createPlotLine()
.setValue(0)
.setWidth(1)
.setColor("#808080");
información sobre herramientas
Configure la información sobre herramientas. Coloque el sufijo que se agregará después del valor (eje y).
ToolTip toolTip = new ToolTip();
toolTip.setValueSuffix("°C");
chart.setToolTip(toolTip);
leyenda
Configure la leyenda para que se muestre en el lado derecho del gráfico junto con otras propiedades.
legend.setLayout(Legend.Layout.VERTICAL)
.setAlign(Legend.Align.RIGHT)
.setVerticalAlign(Legend.VerticalAlign.TOP)
.setX(-10)
.setY(100)
.setBorderWidth(0);
chart.setLegend(legend);
serie
Configure los datos que se mostrarán en el gráfico. La serie es una matriz donde cada elemento de esta matriz representa una sola línea en el gráfico.
chart.addSeries(chart.createSeries()
.setName("Tokyo")
.setPoints(new Number[] {
7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2,
26.5, 23.3, 18.3, 13.9, 9.6
})
);
chart.addSeries(chart.createSeries()
.setName("New York")
.setPoints(new Number[] {
-0.2, 0.8, 5.7, 11.3, 17.0, 22.0, 24.8,
24.1, 20.1, 14.1, 8.6, 2.5
})
);
chart.addSeries(chart.createSeries()
.setName("Berlin")
.setPoints(new Number[] {
-0.9, 0.6, 3.5, 8.4, 13.5, 17.0, 18.6,
17.9, 14.3, 9.0, 3.9, 1.0
})
);
chart.addSeries(chart.createSeries()
.setName("London")
.setPoints(new Number[] {
3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0,
16.6, 14.2, 10.3, 6.6, 4.8
})
);
Paso 3: agregue el gráfico al panel principal.
Estamos agregando el gráfico al panel raíz.
RootPanel.get().add(chart);
Ejemplo
Considere el siguiente ejemplo para comprender mejor la sintaxis de configuración:
HelloWorld.java
package com.tutorialspoint.client;
import org.moxieapps.gwt.highcharts.client.Chart;
import org.moxieapps.gwt.highcharts.client.Legend;
import org.moxieapps.gwt.highcharts.client.Series.Type;
import org.moxieapps.gwt.highcharts.client.ToolTip;
import org.moxieapps.gwt.highcharts.client.XAxis;
import org.moxieapps.gwt.highcharts.client.YAxis;
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.ui.RootPanel;
public class HelloWorld implements EntryPoint {
public void onModuleLoad() {
Chart chart = new Chart()
.setType(Type.SPLINE)
.setChartTitleText("Monthly Average Temperature")
.setChartSubtitleText("Source: WorldClimate.com");
XAxis xAxis = chart.getXAxis();
xAxis.setCategories("Jan", "Feb", "Mar", "Apr", "May", "Jun",
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec");
YAxis yAxis = chart.getYAxis();
yAxis.setAxisTitleText("Temperature °C");
yAxis.createPlotLine()
.setValue(0)
.setWidth(1)
.setColor("#808080");
ToolTip toolTip = new ToolTip();
toolTip.setValueSuffix("°C");
chart.setToolTip(toolTip);
Legend legend = new Legend();
legend.setLayout(Legend.Layout.VERTICAL)
.setAlign(Legend.Align.RIGHT)
.setVerticalAlign(Legend.VerticalAlign.TOP)
.setX(-10)
.setY(100)
.setBorderWidth(0);
chart.setLegend(legend);
chart.addSeries(chart.createSeries()
.setName("Tokyo")
.setPoints(new Number[] {
7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2,
26.5, 23.3, 18.3, 13.9, 9.6
})
);
chart.addSeries(chart.createSeries()
.setName("New York")
.setPoints(new Number[] {
-0.2, 0.8, 5.7, 11.3, 17.0, 22.0, 24.8,
24.1, 20.1, 14.1, 8.6, 2.5
})
);
chart.addSeries(chart.createSeries()
.setName("Berlin")
.setPoints(new Number[] {
-0.9, 0.6, 3.5, 8.4, 13.5, 17.0, 18.6,
17.9, 14.3, 9.0, 3.9, 1.0
})
);
chart.addSeries(chart.createSeries()
.setName("London")
.setPoints(new Number[] {
3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0,
16.6, 14.2, 10.3, 6.6, 4.8
})
);
RootPanel.get().add(chart);
}
}
Resultado
Verifique el resultado.
Los gráficos de líneas se utilizan para dibujar gráficos basados en líneas / splines. En esta sección, discutiremos los diferentes tipos de gráficos basados en líneas y splines.
No Señor. | Tipo de gráfico y descripción |
---|---|
1 | Linea basica
Gráfico de líneas básico. |
2 | Con etiquetas de datos
Gráfico con etiquetas de datos. |
3 | Serie temporal, ampliable
Gráfico con series de tiempo. |
4 | Spline con ejes invertidos
Gráfico de splines con ejes invertidos. |
5 | Spline con símbolos
Gráfico de splines con símbolos de calor / lluvia. |
6 | Spline con bandas de trama
Gráfico de splines con bandas de trama. |
Los gráficos de área se utilizan para dibujar gráficos basados en áreas. En esta sección, discutiremos los diferentes tipos de gráficos basados en áreas.
No Señor. | Tipo de gráfico y descripción |
---|---|
1 | Área básica
Gráfico de áreas básico. |
2 | Área con valores negativos
Gráfico de área con valores negativos. |
3 | Área apilada
Gráfico que tiene áreas apiladas una sobre otra. |
4 | Área de porcentaje
Gráfico con datos en términos porcentuales. |
5 | Área con puntos faltantes
Gráfico con puntos faltantes en los datos. |
6 | Ejes invertidos
Área usando ejes invertidos. |
7 | Área-spline
Gráfico de áreas usando spline. |
Los gráficos de barras se utilizan para dibujar gráficos basados en barras. En esta sección, discutiremos los diferentes tipos de gráficos basados en barras.
No Señor. | Tipo de gráfico y descripción |
---|---|
1 | Barra básica
Gráfico de barras básico. |
2 | Barra apilada
Gráfico de barras con barras apiladas unas sobre otras. |
3 | Gráfico de barras con valores negativos
Gráfico de barras con valores negativos. |
Los gráficos de columnas se utilizan para dibujar gráficos basados en columnas. En esta sección, discutiremos los diferentes tipos de gráficos basados en columnas.
No Señor. | Tipo de gráfico y descripción |
---|---|
1 | Columna básica
Gráfico de columnas básico. |
2 | Columna con valores negativos
Gráfico de columnas con valores negativos. |
3 | Columna apilada
Gráfico con columnas apiladas unas sobre otras. |
4 | Columna apilada y agrupada
Gráfico con columna en forma apilada y agrupada. |
5 | Columna con porcentaje apilado
Gráfico con porcentaje apilado. |
6 | Columna con etiquetas giradas
Gráfico de columnas con etiquetas giradas en columnas. |
7 | Rango de columna
Gráfico de columnas usando rangos. |
Los gráficos circulares se utilizan para dibujar gráficos circulares. En esta sección, analizaremos los diferentes tipos de gráficos circulares.
No Señor. | Tipo de gráfico y descripción |
---|---|
1 | Pastel básico
Gráfico circular básico. |
2 | Pastel con leyendas
Gráfico circular con leyendas. |
3 | Gráfico de anillos
Gráfico de anillos. |
A continuación se muestra un ejemplo de un gráfico de dispersión básico.
Ya hemos visto la configuración utilizada para dibujar un gráfico en el capítulo Sintaxis de configuración de Highcharts .
A continuación se ofrece un ejemplo de un gráfico de dispersión básico.
Configuraciones
Veamos ahora las configuraciones / pasos adicionales realizados.
serie
Configure el tipo de gráfico para que se base en la dispersión. series.typedecide el tipo de serie del gráfico. Aquí, el valor predeterminado es "línea".
chart.addSeries(chart.createSeries()
.setName("Observations")
.setType(Type.SCATTER)
.setPoints(new Number[] {
1, 1.5, 2.8, 3.5, 3.9, 4.2
})
);
Ejemplo
HelloWorld.java
package com.tutorialspoint.client;
import org.moxieapps.gwt.highcharts.client.Chart;
import org.moxieapps.gwt.highcharts.client.Series.Type;
import com.google.gwt.core.client.EntryPoint;
import com.google.gwt.user.client.ui.RootPanel;
public class HelloWorld implements EntryPoint {
public void onModuleLoad() {
final Chart chart = new Chart()
.setChartTitleText("Scatter plot");
chart.getXAxis()
.setMin(-0.5)
.setMax(5.5);
chart.getYAxis()
.setMin(0);
chart.addSeries(chart.createSeries()
.setName("Observations")
.setType(Type.SCATTER)
.setPoints(new Number[] {
1, 1.5, 2.8, 3.5, 3.9, 4.2
})
);
RootPanel.get().add(chart);
}
}
Resultado
Verifique el resultado.
Los gráficos dinámicos se utilizan para dibujar gráficos basados en datos donde los datos pueden cambiar después de la representación del gráfico. En esta sección, discutiremos los diferentes tipos de gráficos dinámicos.
No Señor. | Tipo de gráfico y descripción |
---|---|
1 | Spline actualizándose cada segundo
El gráfico de splines se actualiza cada segundo. |
2 | Haga clic para agregar un punto
Gráfico con capacidad de suma de puntos. |
Los gráficos combinados se utilizan para dibujar gráficos mixtos; por ejemplo, gráfico de barras con gráfico circular. En esta sección, discutiremos los diferentes tipos de tablas de combinaciones.
No Señor. | Tipo de gráfico y descripción |
---|---|
1 | Columna, línea y circular
Gráfico con columna, línea y circular. |
2 | Ejes duales, línea y columna
Gráfico con ejes duales, línea y columna. |
3 | Varios ejes
Gráfico que tiene varios ejes. |
4 | Dispersión con línea de regresión
Gráfico de dispersión con línea de regresión. |
Los gráficos 3D se utilizan para dibujar gráficos tridimensionales. En esta sección, discutiremos los diferentes tipos de gráficos 3D.
No Señor. | Tipo de gráfico y descripción |
---|---|
1 | Columna 3D
Gráfico de columnas 3D. |
2 | Dispersión 3D
Gráfico de dispersión 3D. |
3 | Pastel 3D
Gráfico circular 3D. |
Los gráficos de mapas se utilizan para dibujar mapas de calor o gráficos de mapas de árboles. En esta sección, discutiremos los diferentes tipos de gráficos de mapas.
No Señor. | Tipo de gráfico y descripción |
---|---|
1 | Mapa de calor
Mapa de calor. |
2 | Mapa del árbol
Mapa de árboles. |