Elemento de Gráfico

PropTipoRequeridoEjemploRango de ValoresDescripción
chartTypestringtrue--El tipo de gráfico a mostrar. Tipos soportados: bar, line, area, scatter, pie, doughnut, radar.
chartWidthnumbertrue-200 - 800El ancho del lienzo del gráfico, en píxeles.
chartHeightnumbertrue-150 - 600La altura del lienzo del gráfico, en píxeles.
bgColorstringfalse--El color de fondo del gráfico, en formato hexadecimal.
bgAlphanumberfalse-0 - 1El nivel de transparencia del fondo del gráfico. 1 representa opacidad total, y 0 representa transparencia total.
showAxisbooleanfalse--Si se deben mostrar los ejes del gráfico.
axisColorstringfalse--El color de los ejes del gráfico, en formato hexadecimal.
axisWidthnumberfalse-1 - 10El ancho de los ejes del gráfico, en píxeles.
showGridbooleanfalse--Si se debe mostrar la cuadrícula del gráfico.
gridColorstringfalse--El color de la cuadrícula del gráfico, en formato hexadecimal.
gridAlphanumberfalse-0 - 1El nivel de transparencia de la cuadrícula del gráfico. 1 representa opacidad total, y 0 representa transparencia total.
showLabelsbooleanfalse--Si se deben mostrar las etiquetas del gráfico.
labelStyleobjectfalse--Configuración del estilo de texto para las etiquetas del gráfico.
labelStyle.fillstringfalse--El color de fuente de las etiquetas del gráfico, en formato hexadecimal.
labelStyle.fontSizenumberfalse-8 - 100El tamaño de fuente de las etiquetas del gráfico, en píxeles.
labelStyle.fontFamilystringfalse--La familia de fuentes de las etiquetas del gráfico.
labelStyle.fontWeightstringfalse--El peso de la fuente de las etiquetas del gráfico (por ejemplo, normal, negrita).
labelStyle.strokestringfalse--El color de trazo de las etiquetas del gráfico, en formato hexadecimal.
labelStyle.strokeThicknessnumberfalse-0 - 10El ancho de trazo de las etiquetas del gráfico, en píxeles.
labelStyle.dropShadowbooleanfalse--Si se debe habilitar el efecto de sombra para las etiquetas del gráfico.
labelStyle.dropShadowColorstringfalse--El color de sombra de las etiquetas del gráfico, en formato hexadecimal.
labelStyle.dropShadowBlurnumberfalse-0 - 20El radio de desenfoque de la sombra de la etiqueta.
labelStyle.dropShadowDistancenumberfalse-0 - 20La distancia de la sombra de la etiqueta desde el texto.
labelStyle.dropShadowAnglenumberfalse-0 - 6.28El ángulo de la sombra de la etiqueta, en radianes.
labelStyle.dropShadowAlphanumberfalse-0 - 1La opacidad de la sombra de la etiqueta.
linePointStylestringfalse--El estilo de los puntos de datos en gráficos de línea/área. Opciones: filled, hollow.
lineSmoothbooleanfalse--Si se deben suavizar las líneas en gráficos de línea/área.
lineAreaAlphanumberfalse-0 - 1El nivel de transparencia del área rellena en gráficos de área.
showLegendbooleanfalse--Si se debe mostrar la leyenda del gráfico.
legendPositionstringfalse--La posición de la leyenda. Actualmente soporta: bottom.
legendItemSizenumberfalse-10 - 30El tamaño de los elementos de la leyenda, en píxeles.
legendGapnumberfalse-4 - 20El espacio entre los elementos de la leyenda, en píxeles.
showBarBackgroundbooleanfalse--Si se debe mostrar el fondo de los gráficos de barras.
barBackgroundColorstringfalse--El color de fondo de las barras, en formato hexadecimal.
barBackgroundAlphanumberfalse-0 - 1El nivel de transparencia del fondo de las barras.
barOrientationstringfalse--La orientación de las barras. Opciones: vertical, horizontal.
barCornerRadiusnumberfalse-0 - 20El radio de esquina de las barras, en píxeles.
dataSetarrayfalse--Un array de conjuntos de datos utilizados para renderizar el gráfico. Cada conjunto de datos contiene un punto de tiempo (dataTime) y puntos de datos (dataPoints).

Tipos de Gráficos

La propiedad chartType determina el estilo de visualización:

  • bar: Gráfico de barras vertical u horizontal
  • line: Gráfico de líneas con suavizado opcional
  • area: Gráfico de área con regiones rellenadas
  • scatter: Diagrama de dispersión con puntos de datos
  • pie: Gráfico de pastel que muestra proporciones
  • doughnut: Gráfico de dona (gráfico de pastel con un agujero en el centro)
  • radar: Gráfico de radar/araña

Estructura de Datos

El dataSet es un array de objetos de datos, donde cada objeto contiene:

  • dataTime: El punto de tiempo relativo al ChartNode (en segundos)
  • dataPoints: Un array de puntos de datos que se mostrarán en este momento

Cada punto de datos en dataPoints contiene:

  • id: Identificador único para el punto de datos
  • label: La etiqueta/nombre del punto de datos
  • value: El valor numérico
  • color (opcional): Color personalizado para este punto de datos en formato hexadecimal

Estilo de Etiquetas

El objeto labelStyle controla la apariencia de las etiquetas de los gráficos:

  • Propiedades de Fuente: fill, fontSize, fontFamily, fontWeight
  • Propiedades de Trazo: stroke, strokeThickness
  • Propiedades de Sombra: dropShadow, dropShadowColor, dropShadowBlur, dropShadowDistance, dropShadowAngle, dropShadowAlpha

Características de Gráficos de Línea y Área

Para gráficos de línea y área, puedes configurar:

  • linePointStyle: Mostrar puntos de datos como círculos rellenos o círculos huecos
  • lineSmooth: Habilitar curvas suaves en lugar de líneas rectas
  • lineAreaAlpha: Controlar la opacidad del área rellena (solo gráficos de área)

Características de Gráficos de Barras

Para gráficos de barras, puedes configurar:

  • barOrientation: Mostrar barras vertical u horizontalmente
  • barCornerRadius: Redondear las esquinas de las barras
  • showBarBackground: Mostrar un fondo detrás de las barras
  • barBackgroundColor/barBackgroundAlpha: Estilizar el fondo de la barra

Configuración de Leyenda

Habilitar y personalizar la leyenda del gráfico:

  • showLegend: Alternar la visibilidad de la leyenda
  • legendPosition: Posición de la leyenda (actualmente soporta "bottom")
  • legendItemSize: Tamaño de los indicadores de color de la leyenda
  • legendGap: Espaciado entre los elementos de la leyenda
chartElement.json
{
"id": "chart-element-id",
"type": "Chart",
"start": 0,
"duration": 10,
"trackIndex": 0,
"x": 100,
"y": 100,
"chartType": "bar",
"chartWidth": 800,
"chartHeight": 600,
"bgColor": "#ffffff",
"bgAlpha": 1,
"showAxis": true,
"axisColor": "#000000",
"axisWidth": 2,
"showGrid": true,
"gridColor": "#cccccc",
"gridAlpha": 0.5,
"showLabels": true,
"labelStyle": {
  "fill": "#333333",
  "fontSize": 12,
  "fontFamily": "Arial",
  "fontWeight": "normal",
  "stroke": "#000000",
  "strokeThickness": 0,
  "dropShadow": false,
  "dropShadowColor": "#000000",
  "dropShadowBlur": 4,
  "dropShadowDistance": 3,
  "dropShadowAngle": 1.2,
  "dropShadowAlpha": 1
},
"showLegend": true,
"legendPosition": "bottom",
"legendItemSize": 14,
"legendGap": 8,
"barOrientation": "vertical",
"barCornerRadius": 4,
"showBarBackground": false,
"barBackgroundColor": "#eeeeee",
"barBackgroundAlpha": 0.4,
"dataSet": [
  {
    "dataTime": 0,
    "dataPoints": [
      { "id": "1", "label": "A", "value": 10, "color": "#ff6384" },
      { "id": "2", "label": "B", "value": 20, "color": "#36a2eb" },
      { "id": "3", "label": "C", "value": 15, "color": "#ffce56" }
    ]
  },
  {
    "dataTime": 5,
    "dataPoints": [
      { "id": "1", "label": "A", "value": 25, "color": "#ff6384" },
      { "id": "2", "label": "B", "value": 18, "color": "#36a2eb" },
      { "id": "3", "label": "C", "value": 22, "color": "#ffce56" }
    ]
  }
]
}