Substituindo Legendas por Rótulos

De Qknow
Ir para: navegação, pesquisa

Introdução

Diferentes tipos de gráficos necessitam de legendas para esclarecer ao usuário qual informação faz parte de cada elemento apresentado. No exemplo abaixo, a legenda direciona a análise para as cores que sinalizam o significado da informação. Apenas gráficos multicoloridos necessitam de legendas, doutra forma a própria cor única sinaliza ao tomador de decisões o significado do gráfico.

Legends 01.png

Muitas vezes o espaço é restrito para apresentação de informações o que pode implicar em uma necessidade de eliminar a legenda liberando espaço para o elemento gráfico, ao mesmo tempo que evitando perder a relação entre a informação e o significado das cores. Um bom exemplo pode ser visualizado no artigo Adicionando Textos aos Valores de Expressões, onde ao invés de utilizar legendas para indicar o conteúdo das fatias do gráfico de pizza, textos adicionais foram incluídos via função Dual, eliminando a necessidade da legenda.

Legends 02.png

Dois exemplos de substituição de legendas são apresentados neste artigo, um utilizando a função Dual com testes de valor máximo e outro simulando o recurso conhecido no QlikView como Treliça, ambos demonstrados a seguir.

No gráfico de linhas ao lado é possível observar que as cores representam as informações de uma determinada expressão (seja ela qual for) para cada país. No entanto, não há uma legenda incluída no gráfico. Ao invés disso, um texto contendo o nome do país para cada linha representada foi incluso no último ponto. Para não perder a referência do valor apresentado, o número que corresponde ao ponto é igualmente exibido, permitindo que o usuário acompanhe a linha e determine de que país faz parte a cor representada. Como resultado, o espaço da legenda é substituído pelo conteúdo do gráfico.

Esta técnica permite inúmeras variações, como inserir a legenda no primeiro ponto, exibir ou não o valor em conjunto ou mesmo exibir a legenda nos menores valores de cada linha. Já a segunda visão, abaixo representada, não utiliza nenhuma técnica avançada, mas simula a treliça de maneira visualmente elegante. O conjunto de gráficos representa diferentes cálculos para o índice de desenvolvimento humano (IDH), a partir de perspectivas de número de médicos, quantidade de unidades de atendimento, etc.

  Nota: Os valores apresentados no gráfico a seguir são meramente ilustrativos e não representam nenhum número real.

Legends 03.png

As duas técnicas apresentadas nesta introdução são exploradas nos subitens a seguir.

Substituindo Legendas no Gráfico de Linhas

Para simular o gráfico de linhas apresentado na Introdução, é possível carregar um pequeno conjunto de dados no script a partir do fragmento abaixo.

 CrossTable(Country, Sales)
 LOAD * INLINE [
 Date, USA, UK, Japan, Germany
 2013-01-01, 123, 100, 80, 40
 2013-02-01, 134, 111, 75, 50
 2013-03-01, 155, 95, 70, 60
 2013-04-01, 165, 85, 88, 50
 2013-05-01, 154, 125, 90, 70
 2013-06-01, 133, 110, 75, 99];

Utilizando o fragmento de massa de dados acima, crie um novo gráfico de linhas que resulte em algo semelhante ao gráfico anterior. Ou seja, deve apresentar uma linha para cada país no somatório de vendas (Sales). Na lista de dimensões, escolha os campos Date e Country, respectivamente. Inclua uma única expressão contendo a seguinte fórmula:

 =Dual(If(Date=Max(TOTAL Date), Country & ': ' & Sum(Sales), Sum(Sales)), Sum(Sales))

A função IF (SE) testará se a data apresentada em cada ponto do Eixo X é igual a maior data existente no ponto de cada linha. Para isso, o operador TOTAL é utilizado dentro da função Max. Ao incluir TOTAL na instrução o QlikView é guiado a ignorar o agrupamento do eixo X e calcular a função Max sobre todos os dados existentes no gráfico. Assim, é possível determinar o ponto onde a maior data é apresentada. Ou seja, Max(TOTAL Date) retorna a maior data do segmento do eixo X.

A partir do resultado verdadeiro, ou seja, quando os pontos do gráfico de linhas estiverem na maior data apresentada, a expressão Country & ': ' & Sum(Sales) entra em cena. Assim, o campo Country (País) é apresentado seguido de dois pontos (:) e o valor desejado, Sum(Sales). Para todos os casos em que a data não for a maior, então apenas o valor será exibido a partir da função Sum(Sales).

  Nota: Este artigo é destinado a usuários (profissionais de QlikView) que tenham conhecimento sobre as funções IF e MAX.

A função Dual possui dois parâmetros, um para apresentação do texto desejado e outro para o cálculo a ser realizado. Na primeira parte, Dual utiliza a função IF para averiguar se o ponto em questão é o maior valor do Eixo X. Quando o resultado é verdadeiro, apresenta o valor correspondente ao nome do país seguido de dois pontos e o somatório de vendas a partir do fragmento Country & ': ' & Sum(Sales). Ainda dentro do primeiro parâmetro de Dual, é possível (e até provável) que o ponto avaliado não esteja na maior data do segmento, por isso a condição SE NÃO do IF instrui o QlikView a apresentar apenas o valor por meio da operação Sum(Sales). Lembre-se! A sintaxe elementar da função IF é:

 =IF(condição, se_resultado_verdadeiro, se_resultado_falso)

O que determina a posição de cada ponto no gráfico formando as linhas deve ser o resultado de uma operação de somatório das vendas. Por isso, pode parecer que a instrução =Sum(Sales) está repetida, mas não é o caso. Trata-se do segundo parâmetro da função Dual que instrui o QlikView a calcular a posição dos pontos das linhas do gráfico. É justamente a Expressão.

 =Dual(texto_do_ponto, formula_ou_expressao)

Alguns ajustes visuais são necessários ao gráfico a partir dos seguintes locais:

  • Na guia Geral, desmarque a opção Mostrar Titulo do Gráfico.
  • Na guia Dimensões, desmarque a opção Mostrar Legenda.
  • Em Expressões, marque a opção Valores sobre os Dados e Símbolo.
  • Na guia Apresentação, retire a legenda desmarcando a opção Mostrar Legenda.
  • Na guia Geral inclua o texto Faturamento por País na opção Mostrar Título no Gráfico (opcional).
  • Em Layout, configure a Largura da Borda para o valor zero (0) (opcional).
  • Na guia Eixos, marque a opção Ocultar Eixo (opcional).
  • Por fim, na guia Título, desmarque a opção Mostrar Título (opcional).

O resultado das configurações deve ser semelhante ao gráfico abaixo apresentado. Note que a legenda foi substituída pelo texto que corresponde a cada País no último período. Ou seja, no último ponto de cada linha.

Line Chart 1.PNG

Simulando o Recurso de Treliça

O recurso de treliça é usualmente habilitado para permitir explorar múltiplas visões sobre um mesmo eixo de dados. No entanto, a configuração da Treliça é delicada e pode distorcer a visualização desejada. Ademais, para o tipo de visualização proposto por este artigo (com várias expressões), a Treliça não resulta no visual esperado. Para simular o efeito de treliça descrito nesta seção, é possível utilizar o fragmento de código abaixo.

  Nota: Para utilizar o recurso de Treliça nativo do QlikView, veja o artigo Configurando Treliças.
LOAD * Inline [
FaixaIDH, Enviados, UPAS, UBS, Municípios
'De 0,40 a 0,49', 29,	1,	262,	32
'De 0,50 e 0,59', 365,	57,	11102,	1367
'De 0,60 e 0,69', 335,	254,	18059,	2233
'De 0,70 e 0,79', 490,	647,	19849,	1889
'De 0,80 e 0,89', 97,	155,	2274,	44];

No contexto de negócio, é desejado apresentar quantos médicos foram designados para atender municípios com índices de desenvolvimento humano (IDH) diferentes, em faixas. Além disso, é desejado apresentar quantas unidades de saúde (UBS, Unidades Básicas de Saúde) existem na faixa de IDH, além de outros indicadores como a quantidade de UPAS (Unidades de Pronto Atendimento). Para todas as expressões, a dimensão será a mesma. Ou seja, a faixa de IDH. A construção do efeito visual demonstrado na introdução inicia pela criação de um gráfico de barras para o número de médicos enviados. Utilize os passos a seguir para configurar o primeiro dos gráficos de barras a serem utilizados.

Simulador Trelica Grafico 1.PNG

1. Crie um novo gráfico de barras e aproveite para demarcar a opção Mostrar Título no Gráfico quando estiver na guia Geral.

2. Avence para a guia Dimensões e adicione o campo FaixaIDH como dimensão do gráfico de barras.

3. Ainda na guia de Dimensões, desmarque as opções Mostrar Legenda e Rótulo.

4. Avance para as expressões e inclua a expressão que apresenta o somatório dos médicos enviados com a fórmula =Sum(Enviados).

5. Na mesma guia Expressões, marque a opção Valores sobre os Dados.

6. Avance o assistente até a guia Estilo e marque a orientação do gráfico para Horizontal.

7. Passe pela guia Eixos e marque a opção Ocultar Eixo.

8. Na guia de Cores, assinale a opção Multicoloriddo.

9. Avance até a guia Layout e reduza a Largura da borda para zero (0).

10. Por último, na guia Título desmarque a opção Mostrar Título.

Textual Formating 1.PNG

O resultado é um gráfico simples como exibido ao lado do passo a passo acima. O gráfico isolado não possui uma indicação adequada do que deve representar, por isso outros elementos gráficos são importantes. Para identificar adequadamente do que se trata o gráfico basta incluir um título em forma de caixa de textos. Porém, o QlikView 11 SR10 não é capaz de formatar a caixa de texto com diferentes cores e fontes, motivo pelo qual o título é substituído por duas caixas textuais, tal como no exemplo ao lado.

O restante da simulação da Treliça é realizada apenas copiando e colando o gráfico até o número de dimensões que se deseja apresentar. No caso, são 4 gráficos iguais com expressões diferentes, uma para cada visão que se deseja ter. Por isso, copie e cole o gráfico de barras 4 vezes e posicione um ao lado do outro. Aproveite também para adicionar as caixas de texto de cada gráfico indicando o significado de cada um. O resultado será algo semelhante a figura abaixo apresentada.

Trelica Simulation 1.PNG

Para finalizar a simulação da treliça, é preciso incluir uma legenda em forma de seletores para que o usuário saiba o que cada cor representa. Como as legendas foram desabilitadas e os rótulos do eixo X foram ocultos, uma alternativa é incluir um objeto do tipo lista com valores na horizontal, seguindo os passos abaixo.

1. Adicione um objeto do tipo Lista para o campo FaixaIDH.

2. Acessando as propriedades da Lista, desmarque a opção Mostrar Título na guia Título.

3. Na guia Apresentação, desmarque a opção Coluna Única.

4. Feche a caixa de propriedades e altere o tamanho da lista a partir do canto inferior direito para que haja somente uma linha.

Até esta etapa é possível que você tenha uma lista semelhante a exibida a seguir.

List 1.PNG

Para uma relação ideal dos itens apresentados e as barras dos gráficos, é preciso relacionar a lista com as cores apresentadas.

5. Inclua uma nova caixa de texto e a redimensione para um formato quadricular pequeno.

6. Nas propriedades da caixa de texto, acesse a guia Layout e altere a camada para a opção Personalizar igual a 2.

7. Copie e cole a caixa de texto 5 vezes, uma para cada barra do gráfico.

8. Posicione cada caixa de texto ao lado do valor de cada item da lista.

9. Ajuste as cores das caixas de texto de acordo com as cores usadas nas barras.

  Nota: É possível copiar a cor entre elementos com um clique com o botão da direita sobre a cor apresentada nas propriedades.

O efeito final é apresentado a seguir.

Trelica Simulation 2.PNG

  Dica: É recomendável que a lista utilize o efeito LED para sobrepor o estilo da seleção (guia Apresentação). Procure também zerar as bordas
        da lista para evitar o efeito de contorno que ocorreu na imagem acima.


Funções Utilizadas

  • SUM
  • IF
  • DUAL
  • MAX


Assuntos Relacionados


Envelope01.jpg
Procurando Algo? Fale Conosco!

Voltar | Página Principal