Skip to main content
Woohoo! Qlik Community has won “Best in Class Community” in the 2024 Khoros Kudos awards!
Announcements
Nov. 20th, Qlik Insider - Lakehouses: Driving the Future of Data & AI - PICK A SESSION
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Google maps

Hi,

Has anyone read the following article:

http://www.analyticsvidhya.com/blog/2014/05/google-map-qlikview/

I tried to use the script without success.

The article says that we have to get a unique google map key, but GOOGLE says that now, a key is not neccessary.

But anyway, it did not work for me.

Thans

2 Replies
qepmalheiros
Contributor III
Contributor III

Desenvolvimento PARA O Google Maps API v3.

Vamos lá!

Google Maps Nao 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

vikasmahajan

Go through this Google Map for India

HTH

Vikas

Hope this resolve your issue.
If the issue is solved please mark the answer with Accept as Solution & like it.
If you want to go quickly, go alone. If you want to go far, go together.