Creación de gráficos circulares
Una tarjeta de gráfico circular muestra datos en grupos de datos que se pueden trazar como un círculo dividido en sectores que representan cada uno una proporción del total. Puede utilizar las visualizaciones circulares para mostrar las proporciones de los datos categóricos.
Acerca de esta tarea
- Título de tarjeta
- Etiqueta o cabecera exclusiva que se asigna a la tarjeta.
- Ayuda contextual de tarjeta
- Una ayuda contextual proporciona detalles adicionales sobre los datos que se muestran en la tarjeta.
- Etiquetas
- El valor de porcentaje del todo para una categoría individual, por ejemplo,
24%o76%. - Enlace de pie de página
- Un campo o enlace que se puede pulsar con una etiqueta, por ejemplo,
View all.
Procedimiento
En la pestaña General , defina la tarjeta:
En la pestaña Datos , añada datos a la tarjeta:
En el separador Estilo , defina el estilo de la tarjeta:
Ejemplo
tenantId .query estimatedLateDelivery($tenantId: String!, $customerFilter: BooleanExp = {CONSTANT_VALUE: true}, $supplierFilter: BooleanExp = {CONSTANT_VALUE: true}, $carrierFilter: BooleanExp = {CONSTANT_VALUE: true}, $originFilter: BooleanExp = {CONSTANT_VALUE: true}, $destinationFilter: BooleanExp = {CONSTANT_VALUE: true}) {
late: businessObjects(
simpleFilter: {tenantId: $tenantId, type: Shipment}
advancedFilter: {AND: [{EQUALS: [{SELECT: "shipmentType", type: STRING}, {VALUE: "INBOUND", type: STRING}]}, {GREATER_THAN: [{SELECT: "estimatedDeliveryDelay", type: FLOAT}, {VALUE: "0.0", type: FLOAT}]}, {NOT: {EQUALS: [{SELECT: "statusByDate", type: STRING}, {VALUE: "DELIVERED", type: STRING}]}}, $customerFilter, $supplierFilter, $carrierFilter, $originFilter, $destinationFilter]}
hint: {viewId: "graph"}
cursorParams: {first: 0}
) {
totalCount
}
totalShipments: businessObjects(
simpleFilter: {tenantId: $tenantId, type: Shipment}
advancedFilter: {AND: [{EQUALS: [{SELECT: "shipmentType", type: STRING}, {VALUE: "INBOUND", type: STRING}]}, {NOT: {EQUALS: [{SELECT: "statusByDate", type: STRING}, {VALUE: "DELIVERED", type: STRING}]}}, $customerFilter, $supplierFilter, $carrierFilter, $originFilter, $destinationFilter]}
hint: {viewId: "graph"}
cursorParams: {first: 0}
) {
totalCount
}
}
El código siguiente es un ejemplo de cómo definir las variables que se van a utilizar en la consulta.{
"tenantId": "{{ tenantId }}"
}
El código siguiente es un ejemplo de los datos devueltos por la consulta. En el ejemplo, dos envíos se retrasan de un total de ocho envíos.{
"data": {
"late": {
"totalCount": 2,
"__typename": "BusinessObjectsCursor"
},
"totalShipments": {
"totalCount": 8,
"__typename": "BusinessObjectsCursor"
}
},
"loading": false,
"networkStatus": 7
}En el código siguiente, COMMON.SHIPMENT_STATUS.ON_TIME se añade como un grupo. Los envíos a tiempo se calculan en la transformación restando los envíos retrasados del total de envíos.
{
"legendOrder": [
"COMMON.SHIPMENT_STATUS.ON_TIME",
"COMMON.SHIPMENT_STATUS.LATE"
],
"colorScale": {
"COMMON.SHIPMENT_STATUS.ON_TIME": "#009d9a",
"COMMON.SHIPMENT_STATUS.LATE": "#6929c4"
},
"totalCount": [
"{{this.data.totalShipments.totalCount}}"
],
"errors": "{{#? this.errors}}",
"pageInfo": "{}",
"results": [
{
"group": "COMMON.SHIPMENT_STATUS.LATE",
"value": "{{this.data.late.totalCount}}"
},
{
"group": "COMMON.SHIPMENT_STATUS.ON_TIME",
"value": "{{this.data.totalShipments.totalCount - this.data.late.totalCount}}"
}
]
}
En una transformación, los datos que se muestran en el gráfico deben coincidir con los datos devueltos por la consulta. Puede añadir cualquier cálculo en los datos que devuelve la consulta.
Qué hacer a continuación
Añada la tarjeta a un panel de control utilizando el Creador de paneles de control.