Descripción general Medidor lineal React

    El componente de calibre lineal Ignite UI for React permite visualizar datos en forma de calibre lineal. IgrLinearGauge proporciona una vista simple y concisa de un valor comparado con una escala y uno o más rangos. Admite una escala, un conjunto de marcas y un conjunto de etiquetas. El componente también tiene soporte integrado para transiciones animadas. Esta animación se puede personalizar fácilmente configurando la propiedad transitionDuration. Las características del componente de calibre lineal incluyen orientación y dirección configurables, elementos visuales configurables como la aguja y más.

    React Linear Gauge Example

    El siguiente ejemplo demuestra cómo configurar varias propiedades en el mismo IgrLinearGauge puede transformarlo en un calibre lineal completamente diferente.

    Dependencies

    Al instalar el componente del medidor React, también se debe instalar el paquete principal.

    npm install --save igniteui-react-core
    npm install --save igniteui-react-gauges
    

    Component Modules

    El IgrLinearGauge requiere los siguientes módulos:

    import { IgrLinearGaugeModule } from 'igniteui-react-gauges';
    
    IgrLinearGaugeModule.register();
    

    Usage

    El siguiente código demuestra cómo crear un medidor lineal que contiene una aguja y tres rangos comparativos en la escala.

     <IgrLinearGauge width="700px"
                       height="30px"
                       minimumValue = {5}
                       maximumValue = {55}
                       value = {43}>
        <IgrLinearGraphRange startValue={0}
                                endValue={15}
                                brush="red"/>
        <IgrLinearGraphRange startValue={15}
                                endValue={30}
                                brush="yellow"/>
        <IgrLinearGraphRange startValue={30}
                                endValue={55}
                                brush="green"/>
     </IgrLinearGauge>
    

    Needle

    Esta es la medida principal que muestra el componente de calibre lineal y se visualiza como una barra o puede personalizarla para que muestre casi cualquier forma, como se muestra a continuación.

     <IgrLinearGauge
        height="80px" width="400px"
        minimumValue={0}
        maximumValue={100} interval={10}
        value={50}
        isNeedleDraggingEnabled={true}
        needleShape="Custom"
        needleBrush="DodgerBlue"
        needleOutline="DodgerBlue"
        needleStrokeThickness={1}
        needleBreadth={15}
        needleInnerExtent={0.35}
        needleOuterExtent={0.65}
        needleOuterPointExtent={0.8}
        needleInnerPointExtent={0.325}
        needleInnerPointWidth={0}
        needleOuterPointWidth={0.3}
        needleInnerBaseWidth={0}
        needleOuterBaseWidth={0.07} />
    

    Highlight Needle

    El calibre lineal se puede modificar para mostrar una segunda aguja. Esto hará que la aguja value principal aparezca con una opacidad más baja. Para habilitar esto, primero establezca highlightValueDisplayMode en Superposición y, a continuación, aplique a highlightValue.

    <IgrLinearGauge
        height="80px"
        width="100%"
        value={75}
        minimumValue={0} 
        maximumValue={100} 
        interval={10}
        labelInterval={10}
        labelExtent={0.025}
        labelsPreTerminal={0}
        labelsPostInitial={0}
        needleBrush='blue'
        highlightValueDisplayMode="Overlay"
        highlightValue={25} 
        isHighlightNeedleDraggingEnabled={true}
        />
    

    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.

    <IgrLinearGauge
        height="80px" width="400px"
        minimumValue={0} value={50}
        maximumValue={100} interval={10}
        rangeBrushes="#a4bd29, #F86232"
        rangeOutlines="#a4bd29, #F86232" >
        <IgrLinearGraphRange
            startValue={0} endValue={50}
            innerStartExtent={0.075} innerEndExtent={0.075}
            outerStartExtent={0.25} outerEndExtent={0.4} />
        <IgrLinearGraphRange
            startValue={50} endValue={100}
            innerStartExtent={0.075} innerEndExtent={0.075}
            outerStartExtent={0.4} outerEndExtent={0.55} />
    </IgrLinearGauge>
    

    Tick Marks

    Las marcas sirven como división visual de la escala en intervalos para aumentar la legibilidad del calibre lineal.

    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.

    <IgrLinearGauge
        height="80px" width="400px"
        minimumValue={0} value={50}
        maximumValue={100}
        interval={10}
        tickBrush="DodgerBlue"
        ticksPreTerminal={0}
        ticksPostInitial={0}
        tickStrokeThickness={2}
        tickStartExtent={0.25}
        tickEndExtent={0.05}
        minorTickCount={4}
        minorTickBrush="DarkViolet"
        minorTickEndExtent={0.05}
        minorTickStartExtent={0.15}
        minorTickStrokeThickness={1} />
    

    Labels

    Las etiquetas indican las medidas de la báscula.

    <IgrLinearGauge
        height="80px" width="400px"
        minimumValue={0} value={50}
        maximumValue={100} interval={10}
        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 de calibre lineal. Siempre es el primer elemento representado y el resto de elementos, como etiquetas y marcas, se superponen encima.

    <IgrLinearGauge
        height="80px" width="400px"
        minimumValue={0} value={50}
        maximumValue={100} interval={10}
        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 calibre lineal. Puedes personalizar la apariencia y la forma de 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.

    <IgrLinearGauge
        height="80px" width="400px"
        minimumValue={0} value={50}
        maximumValue={100} interval={10}
        isScaleInverted={false}
        scaleBrush="DodgerBlue"
        scaleOutline="DarkViolet"
        scaleStrokeThickness={1}
        scaleInnerExtent={0.05}
        scaleOuterExtent={0.65}
        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 medidor lineal con todas las funciones y elementos visuales habilitados.

    <IgrLinearGauge
        height="80px" width="400px"
        minimumValue={0}
        maximumValue={100}
    
        labelInterval={10}
        labelExtent={0.025}
        labelsPreTerminal={0}
        labelsPostInitial={0}
        fontBrush="Black"
        font="11px Verdana"
    
        interval={10}
        tickBrush="Black"
        ticksPreTerminal={0}
        ticksPostInitial={0}
        tickStrokeThickness={2}
        tickStartExtent={0.25}
        tickEndExtent={0.05}
    
        minorTickCount={4}
        minorTickBrush="Black"
        minorTickEndExtent={0.05}
        minorTickStartExtent={0.15}
        minorTickStrokeThickness={1}
    
        value={50}
        isNeedleDraggingEnabled={true}
        needleShape="Custom"
        needleBrush="Black"
        needleOutline="Black"
        needleStrokeThickness={1}
        needleBreadth={15}
        needleInnerExtent={0.35}
        needleOuterExtent={0.65}
        needleOuterPointExtent={0.8}
        needleInnerPointExtent={0.325}
        needleInnerPointWidth={0}
        needleOuterPointWidth={0.3}
        needleInnerBaseWidth={0}
        needleOuterBaseWidth={0.07}
    
        isScaleInverted={false}
        scaleBrush="Gray"
        scaleOutline="Gray"
        scaleStrokeThickness={1}
        scaleInnerExtent={0.05}
        scaleOuterExtent={0.65}
        scaleStartExtent={0.05}
        scaleEndExtent={0.95}
    
        backingBrush="#cecece"
        backingOutline="#cecece"
        backingStrokeThickness={4}
        backingInnerExtent={0}
        backingOuterExtent={1}
    
        rangeBrushes ="#C62828, #F96232, #FF9800"
        rangeOutlines="#C62828, #F96232, #FF9800">
        <IgrLinearGraphRange
            startValue={0} endValue={50}
            innerStartExtent={0.075} innerEndExtent={0.075}
            outerStartExtent={0.25} outerEndExtent={0.4} />
        <IgrLinearGraphRange
            startValue={50} endValue={100}
            innerStartExtent={0.075} innerEndExtent={0.075}
            outerStartExtent={0.4} outerEndExtent={0.55} />
    </IgrLinearGauge>
    

    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: