Qlik Community

QlikView App Dev

Discussion Board for collaboration related to QlikView App Development.

Announcements
Join “Do More With Qlik” with Mike Tarallo to get a first-hand look at the New Authoring Experience, June 29th: REGISTER HERE
cancel
Showing results for 
Search instead for 
Did you mean: 
gfisch13
Creator II
Creator II

Using Maps

Hi Everyone - I'm very new to Qlikview and am excited at the functionality I've seen.  I've been looking through the various threads here in the community and would like some recommendations on how to use maps in version 11.  I don't have access to or them means to obtain QlikSense at this point, so this is the only road I can take.

I've seen some posts here that relate to earlier versions but I'm unsure how to apply these protocols to version 11.   I'm using expense data and would like to plot purchases on a map to judge where people are spending money and use the output for both data analysis and investigative purposes.

If there are any simple applications I would love to see how they work as I get up to speed and become a contributor on this site,

Thanks in advance!!!

George Fischetti

5 Replies
qepmalheiros
Contributor III
Contributor III

Google Maps No QlikView

A Integração do Google Maps COM o QlikView PODE Ser Feita Simplesmente atraves da API do Google Maps (MAIS  INFORMAÇÕES da API).  Ser Essa API utilizada PODE POR Meio de URL, sem a necessidade de se utilizar um Extensão.

Como vamos utilizar ESSA NÃO URL QlikView?  Iremos CRIAR UM gráfico de Dispersão e Colocar Uma Imagem Dinâmica de Fundo, Sendo que esta Imagem Sera, hum URL da API do Google Maps fazer!

A API do Google Maps

A v3 utilização da API do Google Mapas E grátis incluido, porem POSSUI limitações de acessos Como Por Exemplo: 2500 acessos POR dia.  Como OUTRAS limitações PODEM Ser visualizadas Nesta  Lista aqui! Caso tenha hum SUA Implementação Mais requisições que hum Desse Pacote Grátis, ENTÃO Rápido rápido Você deve Adquirir Uma Licença de Utilização com o Google.

Para reforçar

Em Nosso Exemplo iremos trabalhar Há A Há com Uma versão grátis Incluido da API, Dessa forma  Não Será Uma necessário utilização da Chave da  API.  Essa Chave E utilizada na Versão Gratuita e paga da API, Uma Vantagem de Utilização E SUA que Rápido Voce algumas PODE Medir Estatísticas de visualização na Página do Google.

Vantagens e Desvantagens

Acredito Que Uma Maior Vantagem API da utilização Dessa E a obtenção de hum resultado simples e Eficiente de Geo e também da NÃO utilização de Extensons (OU SEJA, PODE Ser Utilizado com IE Plugin UO AJAX).

A FICA desvantagem com hum Complexidade de Implementação e também que o mapa de NÃO PODE sofrer MUITAS Ações do Usuário, Por Exemplo Como Navegar Cabelo mapa.

A Implementação

Bom, ENTÃO vamos Iniciar Uma Implementação do Google Maps NÃO QlikView!  Aplicação CRIE Uma nova!

PS: Essa ESTA Sendo Uma Terceira Vez que implemento o Google Maps Fazer zero, SEJA OU, Construir o Gráfico colocando SUAS expressões e configurações.  Já implementei varias vezes e muitos EM Clientes, mas sempre versão Pego Uma Pronta que tenho E de forma copio e rsrs colo!

Primeiro Passo

Precisamos Ter latitude Uma e longitude das Localidades que Queremos Colocar em Nosso mapa.  E Possível Fazer o Baixar das Cidades Brasileiras ATRAVES Fazer locais do IBGE, mas Paragrafo facilitar, Estou disponibilizando hum QVD com a Latitude e Longitude de Todas Quanto Cidades Brasileiras,  FAÇA o Baixe aqui.

Observação: O Nome da Coluna de Latitude e Longitude devem Estar nomeadas Como "latitude" e "longitude" (Tudo minúsculo), pois o Nome da Coluna E NAS utilizada Variáveis ​​de configuracao do Google Maps.  O QVD disponibilizado Já se Encontra Neste Padrão.

Segundo Passo

Possuir INFORMAÇÕES Que façam Relação com Como Cidades.

Abaixo hum Exemplo com INLINE:

Fato: 
CARGA 
*, 
CIDADE & '|'  & ESTADO Como% ChaveCoordenadas
INLINE 
[VENDEDOR,  CIDADE, ESTADO, QUANTIDADE
YURI, Rio Claro, SP, 200 
DAVID, Socorro, SP, 400 
JULIAN, São Paulo, SP, 250 
RAFAEL, Uberlândia , MG, 300 
MARCOS, Franca, SP, 150 
MARIA, Pato Branco, PR, 190 
JULIO, Palmas, TO, 300 
DANIELA, Salvador, BA, 155 
ALAN, Porto Velho, RO, 380 
MARIANA, Amapá, AP, 255 
ALINE, Viana, ES, 310 
PAULA, Canarana, MT, 500 
JOSI, Acari, RN, 
210];

Terceiro Passo

CRIE Uma nova aba em SUA Aplicação e Altere Seu nome Paragrafo fazer o Google Maps.  Nesta aba iremos CRIAR Todas Como Variáveis ​​de configuracao do Google Maps.

Observação: A Descrição do código ESTA comentada.

/ * Zoom Máximo Permitido * /
max_zoom_level = 18;

/ * Recuo da latitude * /
var_lat_offset = '0';

/ * Número Pará posição da latitude * /
var_mid_lat = '= min (latitude) + (1 + var_lat_offset) * ((max (latitude) -min (latitude)) / 2)';

/ * Número Pará posição da longitude * /
var_mid_long = '= min (longitude) + (max (longitude) -min (longitude)) / 2';

/ * Cálculo de Zoom Para centralizar o mapa na posição Correta * /

/ * Fiz algumas alterações nessa Variável, pois em algumas Resoluções o mapa mostrava NÃO OS Pontos (latitude e longitude) NÃO Correto lugar.  Alterações Como eram Pequenas, mas resolveu o meu Problema com o QVD que este Anexo em.  * /
Var_zoom = ' = max (aggr (if (max (round (256 * pow (2, (_ zoom_level -1))) + (longitude * ((256 * pow (2, _zoom_level)) / 360))) - min (round ( 256 * pow (2, (_ zoom_level -1))) + (longitude * ((256 * pow (2, _zoom_level)) / 360))) <map_size_x E

/ * Altera o tipo de mapa * /
var_maptype = '= if (isnull (SOMENTE (maptype)), FieldValue (' & chr (39) e 'maptype' & chr (39) & ', 1), maptype)';

/ * * * Tamanho do Mapa * /
map_size_x = '640'; 
map_size_y = '400';

/ * Omitir o campo de Zoom * /

SET HidePrefix = '_';

/ * Campo Necessário Paragrafo Cálculo Melhor Fazer Zoom * /
_zoom_level: 
CARGA 
RECNO () como _zoom_level 
autogenerate (max_zoom_level);

/ * Tipos de mapas disponíveis * /
maptype: 
CARGA * INLINE 
[maptype 
Roteiro 
Móvel 
POR satélite 
terreno  híbrido];

Quarto Passo

CRIAR o elo Entre Uma Tabela de Dados EA Tabela de coordenadas.

Como Já carregamos Uma Tabela de Dados nenhuma Passo 2, ENTÃO Passo Apenas o Roteiro da Tabela de coordenadas:

Coordenadas: 
CARGA 
nome é '|'  & SiglaUF Como  MunicipiosCoordenadasBrasil.qvd (QVD)  ONDE  /.  * Exibir APENAS Como Cidades em que tenho na Minha Tabela Fato * /  Exists (% ChaveCoordenadas, nome e '|' e SiglaUF);













Quinto Passo

FAÇA SUA Uma recarga de Aplicação.

Ela DEVE Ficar Dessa forma

imagem01

Sexto Passo

Aba Geral

CRIE UM Gráfico do tipo dispersão e desmarque a opção "Mostrar título no Gráfico"

imagem02

Avançar em camarilha.

Aba Dimensões

Na tela de Dimensões, Rápido rápido você DEVE Escolher hum campo Único que Faz hum Referência das Cidades. Sem Nosso Exemplo TEMOS O Campo Chamado "ID", este campo e Único Paragrafo Cada Cidade brasileira.

imagem03

Aba Expressões

Clique em Avançar E Depois clique sobre "Modo Avançado" para exibir Uma tela de expressões que acostumados ESTAMOS.

Iremos expressões CRIAR Tres, respeitando Uma Ordem:

  1. Longitude
  2. Latitude
  3. Vendas


Um Ser respeitada Ordem DEVE, POIS Uma Expressão de preencher vai longitude O Nosso Eixo X, Uma latitude o eA Nosso Eixo Y Vendas SERA O TAMANHO dos simbolos. 
Expressão Longitude:  (round (256 * pow (2, ($ (var_zoom) - 1))) + (max (longitude) * ((256 * pow (2, $ (var_zoom))) / 360))) 

Expressão

Vendas  SUM (QUANTIDADE) 
Para a Expressão vendas, habilité "Texto Como Pop-up" Para Que o Usuário POSSA visualizar o Número Ao deixar o rato Paragrafo soluço o Símbolo. 
imagem04
Avançar em Clique

Aba Classificação

A aba de Classificação NÃO Precisa sofrer alteração nenhuma, mas POR traje classifico Cabelo valor de Y em Ordem decrescente.  imagem05
Clique em Avançar

Aba Estilo

Vai de SUA Preferência.  A Minha EA jornal Última Coluna Direita da  imagem06
Clique em Avançar

Aba Apresentação

A configuracao necessaria Para esta aba E desmarcar "* * Tamanho de símbolos Automáticos", pois Queremos Uma Variação de um a Acordo com o volume de de vendas de.  Desmarque também opções de Como "mostrar Rótulo X" e "Y Mostrar rotulo".  Otras configurações Interessantes:

  • * * Tamanho Máximo da Bolha - Sua Preferência  A PT Minha 10
  • Desabilite "Mostrar Legenda"

imagem07
Clique em Avançar

Aba Eixos

Ágora TEMOS VARIAS alterações de Serém realizadas:

  1. Para o Eixo X
    1. Desabilite "FORCAR 0"
    2. Habilité "Ocultar Eixo"
    3. Habilité Uma escala "Estático MIN" e coloque Uma Expressão Abaixo
      1. (256 * pow (2, ($ (var_zoom) -1))) + (var_mid_long * ((256 * pow (2, $ (var_zoom))) / 360)) -round (map_size_x / 2)
    4. Habilité Uma escala "Max Estático" e coloque Uma Expressão Abaixo
      1. ((256 * pow (2, ($ (var_zoom) -1))) + (var_mid_long * ((256 * pow (2, $ (var_zoom))) / 360)) + round (map_size_x / 2))
  2. Para o Eixo Y
    1. Desabilite "FORCAR 0"
    2. Habilité "Ocultar Eixo"
    3. Habilité Uma escala "Estático MIN" e coloque Uma Expressão Abaixo
      1. ((256*pow(2,($(var_zoom)-1)))+((0.5*log((1+(sin(var_mid_lat*pi()/180)))/(1-(sin(var_mid_lat*pi()/180)))))*((-256*pow(2,$(var_zoom)))/(2*pi())))+round(map_size_y/2))
    4. Habilité Uma escala "Max Estático" e coloque Uma Expressão Abaixo
      1. ((256*pow(2,($(var_zoom)-1)))+((0.5*log((1+(sin(var_mid_lat*pi()/180)))/(1-(sin(var_mid_lat*pi()/180)))))*((-256*pow(2,$(var_zoom)))/(2*pi())))-round(map_size_y/2))


OBS:. TAMBEM alterei Como expressões de "Min Estático" e "Máx Estático" para utilizar o QVD  imagem08
Avançar Clique em

Aba Cores

. Agora vamos Definir Uma Imagem Dinâmica com todos OS Parâmetros Necessários  habilité "Imagem dinâmica" e desabilite a opção "APENAS Área de Desenho".  Na expresão da Imagem dinamica, preencha da Seguinte forma: 
= http://maps.google.com/maps/api/staticmap?center='http://maps.google.com/maps/api/staticmap?center='

num (var_mid_lat, '############ ##', '.', '') 
e ',' num (var_mid_long, '##############', '.', ''













imagem09
Clique em Avançar Até hum aba Título

Aba Título

Desabilite a opção "Mostrar Título" e preencha a Largura e Altura com o valor que colocamos NAS Variáveis ​​map_size_x e map_size_y, respectivamente. imagem10
Camarilha em Concluir e devemos ter o resultado Seguinte  imagem11

Abaixo Estou disponibilizando hum Pacote com Uma Aplicação e Arquivos utilizados.  O o Faça o download aqui!

LEMBRE-SE

O TAMANHO dos simbolos Depender vai Fazer valor de vendas que cada Cidade obteve, Caso Queira Diminuir OS simbolos, Altere na aba Apresentação o TAMANHO Máximo.  Algumas PESSOAS costumam disponibilizar Uma Opção de Zoom PARA O Usuário Escolher se Quer Mais Próximo ou Não, porem ESSA Opção PODE atrapalhar Totalmente Uma Visão do mapa, pois Como VIMOS o Zoom E calculado atraves de Uma Expressão.  O tipo de mapa PODE Ser Alterado ATRAVES DO CAMPO "MapType" que criamos.  Esse campo DEVE Ficar Disponível PARA O Usuário Alterar o Modo de visualização .  Por se TRATAR de hum Gráfico Fazer dispersão tipo, conseguimos nao "passear" Pelo mapa Como fazemos Nenhum local Proprio Fazer GoogleMaps, más o grafico Altera O Seu zoom de visualização de um a Acordo com OS Filtros que São Sendo Feitos Paragrafo Mudança de o das resultado Vendas.  Essa è Uma Maior Reclamação que quando escuto implemento este tipo de mapa.

Importante

Muitos tentam implementar e NÃO conseguem visualizar o mapa quando o MESMO E disponibilizado Nenhum Servidor.  ISSO PODE ocorrer e (na maioria das vezes) o Problema ESTA LOCALIZADO nenhuma Firewall / Proxy da Empresa.  A URL da API do GoogleMaps DEVE Estar Liberada firewall Nenhum da Empresa Para o Servidor do QlikView e também Para Todos OS Usuários que Irão Acessar Esse Relatório.  Caso o mapa, que estava Funcionando, pare de funcionar:

  • Ocorreu o Bloqueio da Página da API do Google Maps Fazer
  • Ultrapassou o limite de visualizações diarias
  • Houve alteração na API do Google (jornal jornal Última alteração registrada que afetou NOSSOS Relatórios foi em 2013)

Conclusão

Uma forma de Utilização Deste mapa agrada MUITAS PESSOAS, MAS NÃO PODE SER que algumas PESSOAS NÃO gostem devido AO "não passear", mas existem modificações Extensões comeu UO que permitem ISSO.

O Mais Importante conseguirmos E apresentar hum Informação Geo Que É querida POR muitos Gestores é esse e Um Meio simples de se atingir ESSA meta.

Por enquanto é Isso pessoal!

Até uma semana Próxima!

NÃO Deixem de comentar

ElizaF
Creator II
Creator II

Hi George,

Have a look of this:

Steps for beginners to implement Google Maps in Qlikview

Google MAPs related APPs

Works great on version 11.

Not applicable

Hi,

I just would like to mention that there are several map extensions available for QlikView where the easiest to use and the most powerful one is IdevioMaps (see http://bi.idevio.com) in my somewhat biased opinion;) Send an email to info@idevio.com if you would like to try it out.

Also note that Google Maps is only free to use if your app is accessible to consumers without charge.

Regards

Johan

gfisch13
Creator II
Creator II
Author

Thanks Johan - I will check this out!!!!!

Not applicable

While I am a big Qlik advocate, maps are one area where the softwhere falls a bit short. I have a few questions for you:

1) what is the size of the data you are looking to map and what would you like to map? One country? A region? The world?

2) What kind of map do you want to create? A chloropleth that fill sin an entire country/state/region with an attribute, like this: http://indiemapper.com/app/images/unclassed_choropleth_map.jpg, or one that has data shown as a "point" by metropolis/city such as this http://cache.gawkerassets.com/assets/images/17/2010/08/500x_crowdmap.jpg. I'll warn that the first one is much more difficult than the second in qlikview.

3) Are you OK using qlikview extensions to fit your use case. Extensions aren't viewable natively in Qlikview and you must go into webmode to see them