Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
jamirjunior
Creator
Creator

Gráfico combinado - Dimensão distinta

Pessoal, preciso desenvolver um gráfico como o da imagem em anexo. Na minha tabela tenho duas datas, uma data de emissão (a que utilizo como dimensão no gráfico - formato mês/ano) e tenho um campo chamado DataCredito (também em formato mês ano). A necessidade é combinar o gráfico utilizando barras para exibir  os valores recebidos por dataEmissao e em linhas exibir os valores recebidos por DataCredito. A imagem foi feita através de sobreposição de dois gráficos só para mostrar a idéia. Alguém pode me ajudar com essa expressão?

Colocar duas dimensões no gráfico não é um opção a menos que haja uma forma de agrupar os dados da dimensão DataCredito por MesDataEmissao.

Obrigado

 

 

 

Labels (3)
1 Solution

Accepted Solutions
brunnovb_in
Partner - Creator
Partner - Creator

Olá Jamir!

A resolução para seu problema ocorre com a criação de uma tabela alternativa contendo as duas datas no mesmo campo (coluna) da tabela. Para isso, é necessário realizar o LOAD da tabela usando o comando "Resident" duas vezes. Além dos campos de data, é necessário carregar um identificar único (ID) e definir um campo flag para usar no Set Analysis da expressão do gráfico. Abaixo insiro código de exemplo:

 

Carga de dados de exemplo:

 

DADOS_TABLE:
LOAD Rowno() as ID, Date(MonthStart(MesDataEmissao),'MM/YYYY') as MesDataEmissao, Date(MonthStart(DataCredito),'MM/YYYY') as DataCredito, Valor Inline [
MesDataEmissao, DataCredito , Valor
01/01/2019 , 10/01/2019 , 100
01/01/2019 , 02/02/2019 , 50
01/01/2019 , , 150
01/01/2019 , 20/02/2019 , 100
01/02/2019 , 20/02/2019 , 500
01/02/2019 , ,
];

TABELA_DATAS:
LOAD ID,
MesDataEmissao as DataPadrao,
'Emissao' as Tipo
Resident
DADOS_TABLE;

LOAD ID,
DataCredito as DataPadrao,
'Credito' as Tipo
Resident
DADOS_TABLE;

 

Nas expressões do gráfico:

Expressão 1: Data Emissão -> Sum({<Tipo={"Emissao"}>}Valor)

Expressão 2: Data Crédito -> Sum({<Tipo={"Credito"}>}Valor)

 

Obtendo o resultado abaixo:

exemplo jamir.png

 

Acredito que era essa a sua dúvida.

 

Atenciosamente,

Brunno V.B.

View solution in original post

2 Replies
saar_lorena
Contributor III
Contributor III

Oi!

Nao sei se entendi direito.

Mas e se voce fizer um bar chart sem dimensao? E deixar nas expressoes os calculos uma para cada dimensao?

Tem um post que explica melhor sobre como fazer isso:

 

https://community.qlik.com/t5/New-to-Qlik-Sense/Create-bar-charts-without-dimensions/td-p/658656

brunnovb_in
Partner - Creator
Partner - Creator

Olá Jamir!

A resolução para seu problema ocorre com a criação de uma tabela alternativa contendo as duas datas no mesmo campo (coluna) da tabela. Para isso, é necessário realizar o LOAD da tabela usando o comando "Resident" duas vezes. Além dos campos de data, é necessário carregar um identificar único (ID) e definir um campo flag para usar no Set Analysis da expressão do gráfico. Abaixo insiro código de exemplo:

 

Carga de dados de exemplo:

 

DADOS_TABLE:
LOAD Rowno() as ID, Date(MonthStart(MesDataEmissao),'MM/YYYY') as MesDataEmissao, Date(MonthStart(DataCredito),'MM/YYYY') as DataCredito, Valor Inline [
MesDataEmissao, DataCredito , Valor
01/01/2019 , 10/01/2019 , 100
01/01/2019 , 02/02/2019 , 50
01/01/2019 , , 150
01/01/2019 , 20/02/2019 , 100
01/02/2019 , 20/02/2019 , 500
01/02/2019 , ,
];

TABELA_DATAS:
LOAD ID,
MesDataEmissao as DataPadrao,
'Emissao' as Tipo
Resident
DADOS_TABLE;

LOAD ID,
DataCredito as DataPadrao,
'Credito' as Tipo
Resident
DADOS_TABLE;

 

Nas expressões do gráfico:

Expressão 1: Data Emissão -> Sum({<Tipo={"Emissao"}>}Valor)

Expressão 2: Data Crédito -> Sum({<Tipo={"Credito"}>}Valor)

 

Obtendo o resultado abaixo:

exemplo jamir.png

 

Acredito que era essa a sua dúvida.

 

Atenciosamente,

Brunno V.B.