Seamos realistas, crear gráficos en aplicaciones React siempre ha sido complicado. Además, los desarrolladores deben tener en cuenta una serie de factores al crear gráficos en React, como el tipo de gráfico, el diseño, los colores, el fondo, los valores, los conjuntos de datos, las opciones y más. Afortunadamente, las bibliotecas de gráficos JavaScript como FusionCharts han facilitado la creación de gráficos en aplicaciones React. Ampliamente considerada como una de las mejores herramientas de visualización de datos, FusionCharts es una biblioteca de gráficos JavaScript que ayuda a los desarrolladores web y móviles a generar gráficos, indicadores y mapas para impulsar paneles.
Con más de 100 tipos de gráficos y más de 2,000 mapas, FusionCharts no solo le ayuda a crear gráficos interactivos para aplicaciones web, sino que también le permite agregar funciones de informes inteligentes como exportación de gráficos, profundización, visualización selectiva de datos y desplazamiento y zoom para tus gráficos.
Descubramos cómo crear gráficos en aplicaciones React usando FusionCharts. Pero antes de entrar en el meollo de la cuestión, descubramos por qué debería crear gráficos en aplicaciones React usando FusionCharts.
Razones por las que debería crear gráficos en aplicaciones React utilizando FusionCharts
Con la ayuda de FusionCharts, los desarrolladores pueden crear sin esfuerzo hermosos gráficos en aplicaciones React y luego agregar capacidades avanzadas de generación de informes, como desglose ilimitado y exportación de gráficos en cuestión de minutos. Estas son algunas de las razones principales por las que debería crear gráficos en aplicaciones React utilizando FusionCharts.
Amplia gama de tipos de gráficos
FusionCharts le ofrece una gran cantidad de tipos de gráficos. Ya sea un simple gráfico de columnas o circular, ventas especializadas, gráficos de marketing o gráficos avanzados de desplazamiento y zoom, FusionCharts cubre todos sus requisitos de gráficos.
Fácil de usar
FusionCharts hace que el proceso de creación de gráficos en aplicaciones React sea una experiencia fácil e indolora. Debido a que utiliza XML/JSON como interfaz de datos, todo lo que necesita hacer es convertir sus datos a XML/JSON usando un lenguaje de programación o la GUI visual proporcionada en FusionCharts para crear gráficos interactivos.
Gráficos animados e interactivos.
Con FusionCharts, puede renderizar gráficos animados rápida y fácilmente con muchas opciones interactivas para los usuarios finales. Además, los diferentes tipos de gráficos admiten diferentes formas de animación e interactividad, proporcionando así una experiencia única a los usuarios finales.
Diseño
Una de las muchas cosas que le encantarán de FusionCharts es que casi todo es personalizable. Desde los subtítulos hasta el color de los puntos, puede personalizar todo según sus necesidades.
Datos de empresa accesibles
Debido a que FusionCharts es un software de visualización basado en la nube, usted y sus desarrolladores pueden acceder a los informes en cualquier momento y lugar.
Con la ayuda de esta biblioteca de gráficos JavaScript, los desarrolladores pueden crear gráficos interactivos para aplicaciones web y empresariales en React de forma rápida y sin esfuerzo.
Ahora que sabemos por qué FusionCharts es una de las mejores herramientas de visualización de datos y por qué es la elección perfecta para crear gráficos en aplicaciones React, descubramos cómo crear gráficos en aplicaciones React usando FusionCharts.
Pasos para crear gráficos en una aplicación React usando FusionCharts
Crear gráficos en aplicaciones React usando FusionCharts es bastante sencillo. Simplemente siga estos pasos:
Paso 1: configurar un proyecto de React
Para crear un gráfico en una aplicación React, primero debe configurar un proyecto de React. Una de las mejores formas de configurar el entorno es utilizar create-react-app.
Abra la terminal e ingrese este código:
npx create-react-app primer-proyecto-fusioncharts cd primer-proyecto-fusioncharts npm inicio |
Paso 2: instale FusionCharts e incluya dependencias
Una vez que haya configurado el proyecto React, instale los módulos react-fusioncharts y fusioncharts usando el siguiente comando:
npm instala fusioncharts reacciona-fusioncharts –guardar |
Una vez que haya instalado los componentes de FusionCharts, puede reemplazar el código en el archivo App.js con el código que se muestra en los pasos siguientes para crear su primer gráfico. Asegúrese de importar todas las dependencias necesarias para comenzar.
// Paso 1 – Incluir reaccionar importar Reaccionar desde “reaccionar”; // Paso 2: incluir el componente react-fusioncharts importar ReactFC desde “react-fusioncharts”; // Paso 3 – Incluir la biblioteca fusioncharts importar FusionCharts desde “fusioncharts”; // Paso 4 – Incluir el tipo de gráfico importar Column2D desde “fusioncharts/fusioncharts.charts”; // Paso 5 – Incluye el tema como fusión importar FusionTheme desde “fusioncharts/themes/fusioncharts.theme.fusion”; // Paso 6: agregar el gráfico y el tema como dependencia a los gráficos de fusión principales ReactFC.fcRoot (FusionCharts, Column2D, FusionTheme); |
Paso 3: preparar los datos
Una vez que haya instalado FusionCharts y haya incluido las dependencias, deberá preparar los datos del gráfico. En el siguiente ejemplo, los datos de las reservas de combustibles fósiles presentes en varios países se muestran en forma de tabla:
País | No. de reservas de combustibles fósiles |
Venezuela | 290K |
ARABIA SAUDITA | 260K |
Canadá | 180K |
Irán | 140K |
Rusia | 115K |
UAE | 100K |
US | 30K |
China | 30K |
FusionCharts acepta los datos en formato JSON. Entonces los datos anteriores tomarán la forma siguiente.
// Preparando los datos del gráfico datos del gráfico constante = [ { etiqueta: “Venezuela”, valor: “290” }, { etiqueta: “Arabia Saudita”, valor: “260” }, { etiqueta: “Canadá”, valor: “180” }, { etiqueta: “Irán”, valor: “140” }, { etiqueta: “Rusia”, valor: “115” }, { etiqueta: “EAU”, valor: “100” }, { etiqueta: "EE. UU.", valor: “30” }, { etiqueta: “China”, valor: “30” } ]; |
Paso 4: Configura tu gráfico
Ahora que los datos de su gráfico están listos, trabajemos en el estilo, el posicionamiento y el contexto de su gráfico.
Alto y ancho: El tamaño del gráfico se define mediante los atributos "ancho" y "alto".
Tipo: 'Tipo' define el tipo de gráfico que va a trazar.
Gráfico: El objeto 'gráfico' en 'Fuente de datos' contiene opciones de configuración de gráficos como tema y formatos de visualización para números.
// Crea un objeto JSON para almacenar las configuraciones del gráfico. const chartConfigs = { tipo: “columna2d”, // El tipo de gráfico ancho: “700”, // Ancho del gráfico altura: “400”, // Altura del gráfico formato de datos: “json”, // Tipo de datos fuente de datos: { // Configuración del gráfico cuadro: { Título: “Países con la mayoría de las reservas de combustibles fósiles [2017-18]”, //Establecer el título del gráfico subtítulo: "En MMbbl = Un millón de barriles", //Establecer el subtítulo del gráfico xAxisName: “País”, //Establece el nombre del eje x yAxisName: “Reservas (MMbbl)”, //Establece el nombre del eje y númeroSufijo: “K”, tema: “fusión” //Establece el tema para tu gráfico }, // Datos del gráfico – del paso 2 datos: chartData } }; |
Paso 5: renderizar el gráfico
Ahora, con todas las piezas del rompecabezas resueltas, es hora de combinar todo lo de arriba y renderizar el Gráfico Simple. Aquí está el código consolidado para representar el gráfico simple.
// PASO 1 – Incluir dependencias // Incluir reaccionar importar Reaccionar desde “reaccionar”; importar ReactDOM desde "react-dom"; // Incluir el componente reaccionar-fusioncharts importar ReactFC desde “react-fusioncharts”; // Incluir la biblioteca fusioncharts importar FusionCharts desde “fusioncharts”; // Incluir el tipo de gráfico importar Column2D desde “fusioncharts/fusioncharts.charts”; // Incluir el tema como fusión importar FusionTheme desde “fusioncharts/themes/fusioncharts.theme.fusion”; // Agregar el gráfico y el tema como dependencia a los gráficos de fusión principales ReactFC.fcRoot (FusionCharts, Column2D, FusionTheme); // PASO 2 – Datos del gráfico datos del gráfico constante = [ { etiqueta: “Venezuela”, valor: “290” }, { etiqueta: “Arabia Saudita”, valor: “260” }, { etiqueta: “Canadá”, valor: “180” }, { etiqueta: “Irán”, valor: “140” }, { etiqueta: “Rusia”, valor: “115” }, { etiqueta: “EAU”, valor: “100” }, { etiqueta: "EE. UU.", valor: “30” }, { etiqueta: “China”, valor: “30” } ]; // PASO 3: crear el objeto JSON para almacenar las configuraciones del gráfico const chartConfigs = { tipo: “columna2d”, // El tipo de gráfico ancho: “700”, // Ancho del gráfico altura: “400”, // Altura del gráfico formato de datos: “json”, // tipo de datos fuente de datos: { // Configuración del gráfico cuadro: { //Establecer el título del gráfico Título: “Países con la mayoría de las reservas de combustibles fósiles [2017-18]”, //Establecer el subtítulo del gráfico subtítulo: "En MMbbl = Un millón de barriles", //Establece el nombre del eje x xAxisName: “País”, //Establece el nombre del eje y yAxisName: “Reservas (MMbbl)”, númeroSufijo: “K”, //Establece el tema para tu gráfico tema: “fusión” }, // Datos del gráfico datos: chartData } }; // PASO 4 – Crear el elemento DOM para pasar el componente reaccionar-fusioncharts La aplicación de clase extiende React.Component { render () { devolver ( ); } } exportar la aplicación predeterminada; |
Una vez que haya renderizado el gráfico, debería poder ver el gráfico simple, como se muestra a continuación:
Ahora que sabe cómo crear un gráfico simple en la aplicación React usando FusionCharts, conozcamos algunas otras características de FusionCharts. A continuación se muestran algunas demostraciones de gráficos creados con FusionCharts en aplicaciones React.
Mapa del mundo
Para representar un gráfico de mapa mundial, debe utilizar el siguiente código consolidado:
importar Reaccionar, { Componente } del 'reaccionar'
importar FusionCharts del 'diagramas de fusión';
importar Mapas del 'fusioncharts/fusioncharts.maps';
importar Mundo del 'fusioncharts/maps/fusioncharts.world';
importar Reaccionar FC del 'react-fusioncharts';
importar Tema de fusión del 'fusioncharts/themes/fusioncharts.theme.fusion';
Reaccionar FC.fcRoot(FusionCharts, Mapas, Mundo, Tema de fusión);
const configuraciones de gráfico = {
tipo: 'mundo',
anchura: 600,
altura: 400,
formato de datos: 'json',
fuente de datos: {
"cuadro": {
"subtítulo": “Crecimiento medio anual de la población”,
“subtítulo”: “1965-2018”,
“númerosufijo”: "%",
“incluir valor en etiquetas”: "1",
“etiquetasepchar”: ":",
“entidadFillHoverColor”: “#FFF9C4”,
"tema": "fusión"
},
"gama de colores": {
“valor mínimo”: "0",
"código": “#FFE0B2”,
"degradado": "1",
"color": [
{
“valor mínimo”: "0.5",
"valor máximo": "1.0",
"color": “#FFD74D”
},
{
“valor mínimo”: "1.0",
"valor máximo": "2.0",
"color": “#FB8C00”
},
{
“valor mínimo”: "2.0",
"valor máximo": "3.0",
"color": “#E65100”
}
]
},
"datos": [
{
"identificación": "SA",
"valor": “.82”,
“mostrarEtiqueta”: "1"
},
{
"identificación": "N / A",
"valor": "2.04",
“mostrarEtiqueta”: "1"
},
{
"identificación": "COMO",
"valor": "1.78",
“mostrarEtiqueta”: "1"
},
{
"identificación": "AF",
"valor": “.40”,
“mostrarEtiqueta”: "1"
},
{
"identificación": "UE",
"valor": "2.58",
“mostrarEtiqueta”: "1"
},
{
"identificación": "PARA",
"valor": "1.30",
“mostrarEtiqueta”: "1"
}
]
},
};
exportar tu préstamo estudiantil clase Aplicación Se extiende Componente {
ceder () {
volvemos <Reaccionar FC {...configuraciones de gráfico} />;
}
}
Una vez que haya renderizado el gráfico del mapa mundial, debería poder ver el mapa mundial como se muestra a continuación:
Demostración de calibre simple
Para representar un gráfico de calibre simple, consulte el siguiente código consolidado:
importar Reaccionar, {Componente} de 'reaccionar';
importar FusionCharts desde 'fusioncharts';
importar widgets desde 'fusioncharts/fusioncharts.widgets';
importar ReactFC desde 'react-fusioncharts';
importar FusionTheme desde 'fusioncharts/themes/fusioncharts.theme.fusion';
ReactFC.fcRoot(FusionCharts, Widgets, FusionTheme);
const chartConfigs = {
tipo: 'calibre angular',
ancho: 600,
altura: 400,
formato de datos: 'json',
fuente de datos: {
"cuadro": {
“caption”: “Puntuación de satisfacción del cliente de EE. UU. para 2018”,
“límite inferior”: “0”,
“límitesuperior”: “100”,
“mostrarValor”: “1”,
“númeroSufijo”: “%”,
“tema”: “fusión”,
“mostrar información sobre herramientas”: “0”
},
"gama de colores": {
"color": [
{
“valormínimo”: “0”,
“valormax”: “25”,
“código”: “#F2726F”
},
{
“valormínimo”: “25”,
“valormax”: “75”,
“código”: “#FFC533”
},
{
“valormínimo”: “75”,
“valormax”: “100”,
“código”: “#62B58F”
}
]
},
“marca”: {
“marcar”: [
{
"Valor": "75"
}
]
}
},
};
exportar clase predeterminada La aplicación extiende el componente {
prestar () {
devolver ;
}
}
Una vez que haya renderizado el gráfico, debería poder ver el gráfico de calibre simple, como se muestra a continuación:
Demostración de enlace de datos
Para renderizarlo, necesitas usar el siguiente código consolidado:
importar Reaccionar, {Componente} de 'reaccionar';
importar FusionCharts desde 'fusioncharts';
importar gráficos desde 'fusioncharts/fusioncharts.charts';
importar ReactFC desde 'react-fusioncharts';
importar FusionTheme desde 'fusioncharts/themes/fusioncharts.theme.fusion';
ReactFC.fcRoot(FusionCharts, Gráficos, FusionTheme);
const chartConfigs = {
tipo: 'columna2d',
ancho: 600,
altura: 400,
formato de datos: 'json',
fuente de datos: {
"cuadro": {
“título”: “Países con más combustibles fósiles [2018-19]”,
“subtítulo”: “En MMbbl = Un millón de barriles”,
“xAxisName”: “País”,
“yAxisName”: “Reservas (MMbbl)”,
“númeroSufijo”: “K”,
“tema”: “fusión”,
“actualizaciónAnimDuration”: “0.4”
},
"datos": [
{
“etiqueta”: “Venezuela”,
"Valor": "290"
},
{
“etiqueta”: “Arabia Saudita”,
"Valor": "260"
},
{
“etiqueta”: “Canadá”,
"Valor": "180"
},
{
“etiqueta”: “Irán”,
"Valor": "140"
},
{
“etiqueta”: “Rusia”,
"Valor": "115"
},
{
“etiqueta”: “EAU”,
"Valor": "100"
},
{
“etiqueta”: “EE.UU.”,
"Valor": "30"
},
{
“etiqueta”: “China”,
"Valor": "30"
}
]
},
};
exportar clase predeterminada La aplicación extiende el componente {
constructor (accesorios) {
super (accesorios);
this.state = chartConfigs;
this.updateData = this.updateData.bind(esto);
}
// Esta función genera un número aleatorio.
obtenerNúmeroAleatorio() {
var máx = 290, mín = 30;
return Math.round(((max – min) * Math.random()) + min);
}
// Controlador para el botón de actualización.
// Actualiza aleatoriamente los valores del gráfico.
actualizar datos() {
var prevDs = Object.assign({}, this.state.dataSource);
prevDs.data[2].value = this.getRandomNumber();
prevDs.data[3].value = this.getRandomNumber();
this.setState({
fuente de datos: prevDs,
});
}
render () {
regreso (
<div></div>
className='btn btn-esquema-secundario btn-sm'
onClick={this.updateData}
>
Cambiar datos del gráfico
</div>
);
}
}
Demostración de eventos del ciclo de vida
Para mostrar eventos del ciclo de vida, consulte el siguiente fragmento de código:
importar React, {Componente} de "reaccionar";
importar FusionCharts desde “fusioncharts”;
importar gráficos desde “fusioncharts/fusioncharts.charts”;
importar ReactFC desde “react-fusioncharts”;
importar FusionTheme desde “fusioncharts/themes/fusioncharts.theme.fusion”;
ReactFC.fcRoot(FusionCharts, Gráficos, FusionTheme);
const chartConfigs = {
tipo: “columna2d”,
ancho: 600,
altura: 400,
formato de datos: “json”,
fuente de datos: {
"cuadro": {
“título”: “Países con más combustibles fósiles [2018-19]”,
“subtítulo”: “En MMbbl = Un millón de barriles”,
“xAxisName”: “País”,
“yAxisName”: “Reservas (MMbbl)”,
“númeroSufijo”: “K”,
“tema”: “fusión”
},
"datos": [
{
“etiqueta”: “Venezuela”,
"Valor": "290"
},
{
“etiqueta”: “Arabia Saudita”,
"Valor": "260"
},
{
“etiqueta”: “Canadá”,
"Valor": "180"
},
{
“etiqueta”: “Irán”,
"Valor": "140"
},
{
“etiqueta”: “Rusia”,
"Valor": "115"
},
{
“etiqueta”: “EAU”,
"Valor": "100"
},
{
“etiqueta”: “EE.UU.”,
"Valor": "30"
},
{
“etiqueta”: “China”,
"Valor": "30"
}
]
}
};
exportar clase predeterminada La aplicación extiende el componente {
constructor (accesorios) {
super (accesorios);
este.estado = {
mensaje:
"Verá notificaciones aquí para los eventos del ciclo de vida del gráfico"
};
this.beforeDataUpdate = this.beforeDataUpdate.bind(esto);
this.dataUpdated = this.dataUpdated.bind(esto);
this.drawComplete = this.drawComplete.bind(esto);
this.renderComplete = this.renderComplete.bind(esto);
}
// Controlador de devolución de llamada para el evento 'beforeDataUpdate'.
antes de la actualización de datos() {
this.state.message = [ Estado:, "antes de la actualización de datos"];
}
// Controlador de devolución de llamada para el evento 'dataUpdated'.
datos actualizados() {
let newMessage = this.state.message.slice();
newMessage.push(“, datos actualizados”);
this.setState({
mensaje: nuevo mensaje
});
}
// Controlador de devolución de llamada para el evento 'drawComplete'.
dibujarCompleto() {
let newMessage = this.state.message.slice();
newMessage.push(“, dibujarComplete”);
this.setState({
mensaje: nuevo mensaje
});
}
// Controlador de devolución de llamada para el evento 'renderComplete'.
renderComplete() {
let newMessage = this.state.message.slice();
newMessage.push(“, renderComplete”);
this.setState({
mensaje: nuevo mensaje
});
}
render () {
regreso (
<div></div>
<ReactFC
{…configuraciones del gráfico}
fcEvent-beforeDataUpdate={this.beforeDataUpdate}
fcEvent-dataUpdated={this.dataUpdated}
fcEvent-drawComplete={this.drawComplete}
fcEvent-renderComplete={this.renderComplete}
/>
{este.mensaje.de.estado}
</div>
);
}
}
Final para llevar
Ya sea que desee crear un gráfico simple o un gráfico circular o un gráfico de desplazamiento y zoom avanzado en una aplicación React, use FusionCharts hacerlo sería tu mejor opción. Ampliamente considerada como una de las mejores herramientas de visualización de datos, FusionCharts aprovecha JavaScript (HTML5) y Flash para crear visualizaciones de datos sorprendentes que los componentes convencionales del lado del servidor no pueden igualar. Como esta biblioteca de gráficos JavaScript funciona con datos XML y JSON, se puede integrar con bases de datos y cualquier tecnología del lado del servidor como ASP, PHP y JSP, entre otras. Si bien crear gráficos en aplicaciones React usando FusionCharts puede parecer una tarea desalentadora, el proceso es bastante simple y directo.
Si sigue los pasos anteriores, puede crear gráficos hermosos de forma rápida y sin esfuerzo en aplicaciones React utilizando FusionCharts.
El paquete FusionCharts React le ofrece lo mejor de ambos mundos. Puede utilizar el poder de JavaScript para incrustar y manipular los gráficos mientras aprovecha al máximo el potente motor de gráficos de FusionCharts.
FusionCharts es una biblioteca muy sencilla de usar y es compatible con las últimas tecnologías como Angular, Vue y React. La documentación de React muestra los componentes disponibles de forma predeterminada, pero puede que valga la pena revisar el Documentación de FusionCharts para ver dónde puede personalizar la biblioteca para su próximo proyecto.