Como personalizar visualizações usando o Chart Config Editor

É possível usar o Chart Config Editor para personalizar opções de formatação nas visualizações do Looker que usam a API HighCharts. Isso inclui a maioria dos gráficos cartesianos, como de colunas, de barras e de linhas, entre outros.

Pré-requisitos

Para acessar o Editor de configuração de gráficos, é preciso ter a permissão can_override_vis_config.

Como personalizar uma visualização

Para personalizar uma visualização com o Editor de configuração de gráficos, siga estas etapas:

  1. Acesse uma visualização em uma Análise ou edite uma visualização em um Look ou um dashboard.
  2. Abra o menu Editar na visualização.
  3. Clique no botão Editar configuração do gráfico na guia Plot. O Looker mostra a caixa de diálogo Edit Chart Config.

    • O painel Configuração do gráfico (origem) contém o JSON original da sua visualização e não pode ser editado.

    • O painel Configuração do gráfico (Substituir) contém o JSON que precisa substituir o JSON de origem. Quando você abre a caixa de diálogo Edit Chart Config pela primeira vez, o Looker preenche o painel com um JSON padrão. Você pode começar com esse JSON ou excluí-lo e inserir qualquer JSON de HighCharts válido.

  4. Selecione a seção Chart Config (Override) e insira um arquivo JSON válido de HighCharts. Os novos valores substituirão os valores na seção Configuração do gráfico (origem).

    • Consulte a seção Exemplos deste artigo para ver exemplos de JSON de HighCharts válido.
    • O Looker aceita valores JSON válidos. O Looker não aceita funções, datas ou valores indefinidos.
  5. Clique em <> (Código de formato) para permitir que o Looker formate o JSON corretamente.

  6. Clique em Visualizar para testar as mudanças.

  7. Clique em Aplicar para aceitar as mudanças. A visualização será mostrada usando os valores JSON personalizados.

Depois de personalizar sua visualização, é possível salvá-la. Se você acessou a visualização em uma Análise, salve a Análise. Se você editou um Look ou um dashboard, clique em Salvar.

Se quiser editar as opções de visualização padrão, primeiro remova as alterações feitas no Editor de configuração de gráficos e, depois, substitua-as. Especificamente, siga estas etapas:

  1. Clique no botão Editar configuração do gráfico na guia Plot. O Looker mostra a caixa de diálogo Edit Chart Config.
  2. Copie o texto no painel Configuração do gráfico (Substituir).
  3. Clique no botão Limpar substituições de gráfico para excluir todas as alterações.
  4. Clique em Aplicar.
  5. Edite sua visualização usando as opções padrão.
  6. Clique no botão Editar configuração do gráfico na guia Plot. O Looker mostra a caixa de diálogo Edit Chart Config.
  7. Insira um JSON de HighCharts válido no painel Configuração do gráfico (Substituir). Você pode usar o texto copiado na etapa 2 como modelo, mas não deixe de testar suas alterações usando o botão Visualizar para garantir que não haja conflitos.
  8. Clique em Aplicar.

Formatação condicional com series formatters

O Editor de configuração de gráficos aceita a maioria dos JSON de HighCharts válidos. Ele também aceita o atributo series formatters, que só existe no Looker. Cada série pode ter vários formatadores para combinar diferentes regras de estilo.

O atributo series formatters aceita dois atributos: select e style.

  • Insira uma expressão lógica no atributo select para indicar quais valores de dados serão formatados.
  • Digite um JSON no atributo style para indicar como formatar os valores de dados.

Por exemplo, o JSON a seguir colore cada valor de dados de laranja se for maior ou igual a 380:

{
  series: [{
    formatters: [{
      select: 'value >= 380',
      style: {
        color: 'orange'
      }
    }]
  }]
}

As seções abaixo descrevem os possíveis valores dos atributos select e style em mais detalhes.

O atributo select

É possível usar os seguintes valores em uma expressão select:

  • value: essa variável retorna o valor da série. Por exemplo, é possível usar select: value > 0 para segmentar todos os valores positivos ou value = 100 para corresponder somente séries com valor de 100.
  • max: use select: max para segmentar o valor da série que tem o valor máximo.
  • min: use select: min para segmentar o valor da série que tem o valor mínimo.
  • percent_rank: esta variável segmenta o valor da série com um percentil especificado. Por exemplo, é possível usar select: percent_rank >= 0.9 para segmentar valores de série no nono percentil.
  • name: essa variável retorna o valor de dimensão da série. Por exemplo, se você tiver um relatório que mostra pedidos vendidos, cancelados e devolvidos, poderá usar select: name = Sold para segmentar as séries em que o valor da dimensão é vendido.
  • AND/OR Use AND e OR para combinar várias expressões lógicas.

Para ver essas expressões implementadas no Editor de configuração de gráficos, consulte o exemplo Colorir os valores máximo, mínimo e percentil.

O atributo style

O atributo style pode ser usado para aplicar estilos compatíveis com o HighCharts. Por exemplo, é possível colorir valores de séries usando style.color, colorir as bordas das séries usando style.borderColor e definir a largura com style.borderWidth. Para uma lista mais completa de opções de estilo, consulte as opções de gráficos altos para series.column.data.

Para visualizações de linhas, use style.marker.fillColor e style.marker.lineColor em vez de style.color. Para uma lista mais completa de opções de estilo de linha, consulte as opções de gráficos altos para series.line.data.marker.

Para conferir a formatação de cor implementada no Editor de configuração de gráficos, consulte o exemplo Colorir os valores máximo, mínimo e percentil.

Examples

As seções a seguir fornecem exemplos de alguns casos de uso comuns do Editor de configuração de gráficos. Para uma lista completa dos atributos que você pode editar, consulte a documentação da API HighCharts.

Mudar a cor do plano de fundo e do texto do eixo

Para mudar a cor de fundo de uma visualização, use o atributo chart.backgroundColor.

Da mesma forma, para alterar a cor do texto dos eixos em uma visualização, use os seguintes atributos:

O JSON do HighCharts a seguir altera a cor do plano de fundo da visualização para roxo e o texto dos títulos e rótulos dos eixos para branco.

{
  chart: {
    backgroundColor: "purple"
  },

  xAxis: {
    labels: {
      style: {
        color: "white"
      }
    },
    title: {
      style: {
        color: "white"
      }
    }
  },

  yAxis: {
    labels: {
      style: {
        color: "white"
      }
    },
    title: {
      style: {
        color: "white"
      }
    }
  }
}

Personalizar a cor da dica

Para personalizar a cor da dica, use os seguintes atributos:

O JSON do HighCharts a seguir altera a cor do plano de fundo da dica para ciano e muda a cor do texto da dica para preto.

{
  tooltip: {
    backgroundColor: "cyan",
    style: {
      color: "black"
    }
  }
}

Personalizar o conteúdo e os estilos da dica

Para personalizar o conteúdo da dica, use os seguintes atributos:

O JSON do HighCharts a seguir altera o formato da dica de ferramenta para que o valor do eixo x apareça em uma fonte maior na parte superior da dica, seguido de uma lista de todos os valores das séries naquele ponto.

Este exemplo usa as seguintes funções e variáveis do HighCharts:

  • {key} é uma variável que retorna o valor do eixo X do ponto selecionado. (neste exemplo, o mês e o ano).
  • {#each points}{/each} é uma função que repete o código incluído para cada série no gráfico.
  • {series.name} é uma variável que retorna o nome da série.
  • {y:.2f} é uma variável que retorna o valor do eixo y do ponto selecionado, arredondado para duas casas decimais.
    • {y} é uma variável que retorna o valor do eixo y do ponto selecionado.
    • {variable:.2f} arredonda variable para duas casas decimais. Consulte a documentação de modelos de Highcharts para mais exemplos de formatação de valores.
{
  tooltip: {
    format: '<span style="font-size: 1.8em">{key}</span><br/>{#each points}<span style="color:{color}; font-weight: bold;">\u25CF {series.name}: </span>{y:.2f}<br/>{/each}',
    shared: true
  },
}

Adicionar legendas e anotações de gráficos

Para adicionar uma anotação, use o atributo annotations. Para adicionar uma legenda ao gráfico, use o atributo caption.

Para conferir as coordenadas de um ponto, clique em Inspect Point Metadata na parte de cima da caixa de diálogo Edit Chart Config. Em seguida, mantenha o ponteiro sobre o ponto de dados que você quer anotar. O Looker mostra um ID de ponto, que pode ser usado no atributo annotations.labels.point.

O JSON do HighCharts a seguir adiciona duas anotações ao gráfico para explicar uma diminuição nos itens de inventário após determinados períodos. Ele também adiciona uma legenda à parte inferior do gráfico para explicar as anotações com mais detalhes.

{
  caption: {
    text: 'Items go on clearance after 60 days, and are thrown away after 80 days. Thus we see large drops in inventory after these events.'
  },
  annotations: [{
    labels: [{
        point: "inventory_items.count-60-79",
        text: "Clearance sale"
      },
      {
        point: "inventory_items.count-80+",
        text: "Thrown away"
      },
    ]
  }]
}

Adicionar intervalos de referência verticais

Para adicionar um intervalo de referência vertical, use o atributo xAxis.plotBands.

O JSON do HighCharts a seguir adiciona um intervalo de referência vertical entre 24 e 29 de novembro de 2022 para indicar um período de venda. Ele também adiciona uma legenda à parte inferior do gráfico para explicar o significado da banda.

Os atributos to e from de xAxis.plotBands precisam corresponder aos valores de dados no gráfico. Neste exemplo, como os dados são baseados em tempo, os atributos aceitam valores de carimbo de data/hora Unix (1669680000000 para 29 de novembro de 2022 e 1669248000000 para 24 de novembro de 2022). Formatos de data baseados em strings, como MM/DD/AAAA e DD-MM-AA, não são compatíveis com os atributos HighCharts to e from.

{
  caption: {
    text: 'This chart uses the HighCharts plotBands attribute to display a band around the Black Friday Cyber Monday sale period.'
  },
  xAxis: {
    plotBands: [{
      to: 1669680000000,
      from: 1669248000000,
      label: {
        text: 'BFCM Sale Period'
      }
    }]
  },
}

Colorir os valores máximo, mínimo e percentil

Consulte a página Como aproveitar ao máximo as visualizações do Looker: personalização da formatação condicional em gráficos cartesianos para ver um exemplo detalhado sobre como colorir os valores máximo, mínimo e percentil de uma visualização cartesiana.

Criar novos tipos de visualização

É possível usar o Chart Config Editor para criar tipos de visualização que não estão incluídos nos tipos de visualização padrão do Looker. Os artigos a seguir fornecem exemplos de algumas visualizações que você pode criar com o Chart Config Editor: