2 Replies Latest reply: Oct 21, 2015 1:36 AM by vikas mahajan RSS

    Google maps

    Jonathan Cohen

      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

        • Re: Google maps
          Emilson Malheiros

          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

          • Re: Google maps
            vikas mahajan

            Go through this Google Map for India

             

            HTH

             

            Vikas