Descripción general del gráfico de viñetas React
El componente gráfico de viñetas React permite una vista lineal y concisa de las medidas comparadas con una escala.
El componente de gráfico de viñetas Ignite UI for React le brinda la capacidad de crear presentaciones de datos atractivas, reemplazando los medidores y medidores que se utilizan en los paneles con gráficos de barras simples pero directos y claros. Un gráfico de viñetas es una de las formas más efectivas y eficientes de presentar el progreso hacia los objetivos, rangos buenos/mejores/mejores, o comparar múltiples mediciones en el menor espacio horizontal o vertical posible.
React Bullet Graph Example
El siguiente ejemplo demuestra cómo configurar varias propiedades en el mismo IgrBulletGraph
puede transformarlo en un gráfico de viñetas completamente diferente.
El gráfico de viñetas admite una escala, un conjunto de marcas y un conjunto de etiquetas. El componente de gráfico de viñetas también tiene soporte integrado para transiciones animadas. Esta animación se puede personalizar fácilmente configurando la propiedad transitionDuration
. Las características del gráfico de viñetas incluyen orientación y dirección configurables, elementos visuales configurables como la aguja y más.
Dependencies
Al instalar el paquete de medidores, también se debe instalar el paquete central.
npm install --save igniteui-react-core
npm install --save igniteui-react-gauges
Component Modules
IgrBulletGraph
requiere los siguientes módulos:
import { IgrBulletGraphModule } from 'igniteui-react-gauges';
IgrBulletGraphModule.register();
Usage
El siguiente código explica cómo crear un componente de gráfico de viñetas y configurar una barra de rendimiento, un marcador de medida comparativa y tres rangos comparativos en la escala.
<IgrBulletGraph height="100"
width="300"
minimumValue={5}
maximumValue={55}
value={35}
targetValue={43}>
<IgrLinearGraphRange startValue={0}
endValue={15}
brush="#828181"/>
<IgrLinearGraphRange StartValue={15}
endValue={30}
brush="#AAAAAA"/>
<IgrLinearGraphRange StartValue={30}
bndValue={55}
brush="#D0D0D0"/>
</IgrBulletGraph>
Comparative Measures
El gráfico de viñetas puede mostrar dos medidas: valor de rendimiento y valor objetivo.
El valor de rendimiento es la medida principal que muestra el componente y se visualiza como una barra que se extiende a lo largo de todo el gráfico. El valor objetivo es una medida con la que se compara el valor del rendimiento. Se muestra como un pequeño bloque que corre perpendicular a la orientación de la barra de rendimiento.
<IgrBulletGraph
value={50}
valueBrush="DodgerBlue"
valueStrokeThickness={1}
valueInnerExtent={0.5}
valueOuterExtent={0.65}
targetValue={80}
targetValueBreadth={10}
targetValueBrush="LimeGreen"
targetValueOutline="LimeGreen"
targetValueStrokeThickness={1}
targetValueInnerExtent={0.3}
targetValueOuterExtent={0.85}
height="80px" width="400px"
minimumValue={0} value={50}
maximumValue={100} />
Highlight Value
El valor de rendimiento del gráfico de viñetas se puede modificar aún más para mostrar el progreso representado como un valor resaltado. Esto hará que aparezca value
con una opacidad más baja. Un buen ejemplo es si value
es 50 y highlightValue
se establece en 25. Esto representaría un rendimiento del 50%, independientemente de cuál sea el valor de targetValue
. Para habilitar esto, primero establezca highlightValueDisplayMode
en Superposición y, a continuación, aplique a highlightValue
a algo inferior a value
.
<IgrBulletGraph
height="80px"
width="100%"
value={70}
targetValue={90}
interval={10}
minimumValue={0}
maximumValue={100}
labelInterval={10}
labelExtent={0.025}
labelsPreTerminal={0}
labelsPostInitial={0}
highlightValueDisplayMode="Overlay"
highlightValue={25} />
Comparative Ranges
Los rangos son elementos visuales que resaltan un rango específico de valores en una escala. Su propósito es comunicar visualmente el estado cualitativo de la barra de medición de desempeño, ilustrando al mismo tiempo el grado en que se encuentra dentro de ese estado.
<IgrBulletGraph
height="80px" width="400px"
minimumValue={0} value={80} interval={10}
maximumValue={100} targetValue={90}
rangeBrushes ="#C62828, #F96232, #FF9800"
rangeOutlines="#C62828, #F96232, #FF9800">
<IgrLinearGraphRange
startValue={0} endValue={40}
innerStartExtent={0.075} innerEndExtent={0.075}
outerStartExtent={0.95} outerEndExtent={0.95} />
<IgrLinearGraphRange
startValue={40} endValue={70}
innerStartExtent={0.075} innerEndExtent={0.075}
outerStartExtent={0.95} outerEndExtent={0.95} />
<IgrLinearGraphRange
startValue={70} endValue={100}
innerStartExtent={0.075} innerEndExtent={0.075}
outerStartExtent={0.95} outerEndExtent={0.95} />
</IgrBulletGraph>
Tick Marks
Las marcas sirven como una división visual de la escala en intervalos para aumentar la legibilidad del gráfico de viñetas.
- Marcas de graduación principales: las marcas de graduación principales se utilizan como delimitadores principales en la escala. La frecuencia con la que aparecen, su extensión y estilo se pueden controlar estableciendo sus propiedades correspondientes.
- Marcas de graduación menores: las marcas de graduación menores representan marcas de graduación auxiliares, que pueden usarse para mejorar aún más la legibilidad de la escala y se pueden personalizar de manera similar a las principales.
<IgrBulletGraph
height="80px" width="400px"
minimumValue={0} value={70}
maximumValue={100} targetValue={90}
interval={10}
tickBrush="DodgerBlue"
ticksPreTerminal={0}
ticksPostInitial={0}
tickStrokeThickness={2}
tickStartExtent={0.2}
tickEndExtent={0.075}
minorTickCount={4}
minorTickBrush="DarkViolet"
minorTickEndExtent={0.1}
minorTickStartExtent={0.2}
minorTickStrokeThickness={1} />
Labels
Las etiquetas indican las medidas de la báscula.
<IgrBulletGraph
height="80px" width="400px"
minimumValue={0} value={70} interval={10}
maximumValue={100} targetValue={90}
labelInterval={10}
labelExtent={0.025}
labelsPreTerminal={0}
labelsPostInitial={0}
fontBrush="DodgerBlue"
font="11px Verdana"/>
Backing
El elemento de respaldo representa el fondo y el borde del componente del gráfico de viñetas. Siempre es el primer elemento representado y el resto de elementos, como etiquetas y marcas, se superponen encima.
<IgrBulletGraph
height="80px" width="400px"
minimumValue={0} value={70} interval={10}
maximumValue={100} targetValue={90}
backingBrush="#bddcfc"
backingOutline="DodgerBlue"
backingStrokeThickness={4}
backingInnerExtent={0}
backingOuterExtent={1} />
Scale
La escala es un elemento visual que resalta toda la gama de valores del indicador. Puede personalizar la apariencia y la forma de la escala. La escala también se puede invertir (usando la propiedad isScaleInverted
) y todas las etiquetas se representarán de derecha a izquierda en lugar de de izquierda a derecha.
<IgrBulletGraph
height="80px" width="400px"
minimumValue={0} value={70} interval={10}
maximumValue={100} targetValue={90}
isScaleInverted={false}
scaleBackgroundBrush="DodgerBlue"
scaleBackgroundOutline="DarkViolet"
scaleBackgroundThickness={2}
scaleStartExtent={0.05}
scaleEndExtent={0.95} />
Summary
Para su comodidad, todos los fragmentos de código anteriores se combinan en un bloque de código a continuación que puede copiar fácilmente a su proyecto y ver el gráfico de viñetas con todas las funciones y elementos visuales habilitados.
<IgrBulletGraph
height="80px" width="400px"
minimumValue={0}
maximumValue={100}
isScaleInverted={false}
scaleBackgroundBrush="Gray"
scaleBackgroundOutline="Gray"
scaleBackgroundThickness={2}
scaleStartExtent={0.05}
scaleEndExtent={0.95}
value={50}
valueBrush="Black"
valueStrokeThickness={1}
valueInnerExtent={0.5}
valueOuterExtent={0.65}
targetValue={80}
targetValueBreadth={7.5}
targetValueBrush="Black"
targetValueOutline="Black"
targetValueStrokeThickness={1}
targetValueInnerExtent={0.3}
targetValueOuterExtent={0.85}
labelInterval={10}
labelExtent={0.025}
labelsPreTerminal={0}
labelsPostInitial={0}
fontBrush="Black"
font="11px Verdana"
backingBrush="#cecece"
backingOutline="#cecece"
backingStrokeThickness={4}
backingInnerExtent={0}
backingOuterExtent={1}
interval={10}
tickBrush="Black"
ticksPreTerminal={0}
ticksPostInitial={0}
tickStrokeThickness={2}
tickStartExtent={0.2}
tickEndExtent={0.075}
minorTickCount={4}
minorTickBrush="Black"
minorTickEndExtent={0.1}
minorTickStartExtent={0.2}
minorTickStrokeThickness={1}
rangeBrushes ="#C62828, #F96232, #FF9800"
rangeOutlines="#C62828, #F96232, #FF9800">
<IgrLinearGraphRange
startValue={20} endValue={40}
innerStartExtent={0.25} innerEndExtent={0.25}
outerStartExtent={0.9} outerEndExtent={0.9} />
<IgrLinearGraphRange
startValue={40} endValue={60}
innerStartExtent={0.25} innerEndExtent={0.25}
outerStartExtent={0.9} outerEndExtent={0.9} />
<IgrLinearGraphRange
startValue={60} endValue={90}
innerStartExtent={0.25} innerEndExtent={0.25}
outerStartExtent={0.9} outerEndExtent={0.9} />
</IgrBulletGraph>
API References
La siguiente es una lista de miembros de API mencionados en las secciones anteriores:
Additional Resources
Puede encontrar más información sobre otros tipos de medidores en estos temas: