BASE DE DADOS DE CONHECIMENTO

Criar uma conexão a mapas personalizados


Publicado: 14 Apr 2017
Data da última modificação: 19 Oct 2023

Pergunta

Como se conectar a mapas personalizados usando o Tableau Desktop. 

Ambiente

Tableau Desktop

Resposta

A maneira mais simples de usar seus próprios mapas no Tableau é conectando-se a um servidor WMS no mapa MapBox. Consulte Usar servidores WMS (Serviço de mapa da Web) e Usar mapas Mapbox para obter mais informações.

Mesmo que o seu servidor de mapa não suporte o padrão WMS e não seja um mapa Mapbox, ainda é possível conectar-se a ele criando uma conexão a partir do Tableau Map Service (TMS). Para conectar-se ao TMS, crie um arquivo .tms.

Observação: enquanto um arquivo .tms pode ser útil ao conectar-se ao servidor do mapa, o Tableau não testa ou suporta arquivos .tms, sendo assim o sucesso pode variar.

Requisitos para uma conexão TMS

Para conectar-se ao servidor de mapa usando um .tms, seu servidor de mapa deve ter os recursos a seguir:

  • Os mapas são retornados como uma coleção de blocos
  • Os blocos estão em projeção Web Mercator
  • Os blocos podem ser endereçados pela URL usando o mesmo esquema de numeração que os serviços de mapeamento da Web comuns. Para obter mais informações, consulte a seção <url-format> em Variáveis no arquivo TMS.

Criar um arquivo TMS simples

Um arquivo .tms é um arquivo de texto simples que pode ser criado em um editor de texto.

  1. Abra um editor de texto.

  2. Copie e cole o XML a seguir no editor de texto.

    <?xml version="1.0" encoding="utf-8"?>
    <mapsource inline="<boolean>" version="8.1">
    <connection class="OpenStreetMap" port="80" server="<server-url>" url-format="<url-format>" />
    <layers>
    <layer display-name='Base' name='base' show-ui='false' type='features' request-string='/' />
    </layers>
    </mapsource>

  3. Substitua as variáveis <boolean><server-url><url-format> conforme descrito na seção Variáveis exigidas no arquivo TMS deste artigo.

  4. Salve o arquivo TMS com uma extensão .tms na pasta Mapsources do Tableau Desktop ou Tableau Server.

    A localização padrão para a pasta Mapsources é:

    • Para o Tableau Desktop no Mac - /Users/<user>/Documents/My Tableau Repository/Mapsources

    • Para o Tableau Desktop no Windows - C:\Users\<user>\Documents\My Tableau Repository\Mapsources

    • Para o Tableau Server - C:\Program Files\Tableau\Tableau Server\<versão>\vizqlserver\mapsources

  5. Abra o Tableau Desktop.

  6. Conecte-se a uma pasta de trabalho que contém as informações de localização.

  7. Selecione Mapa > Mapas em segundo plano e, em seguida, selecione o mapa em segundo plano do servidor de mapa configurado no arquivo TMS.

  8. (Opcional) Se você adicionou o arquivo TMS à pasta Mapsources no Tableau Server, publique a pasta de trabalho no Tableau Server e veja o mapa de segundo plano que você configurou no arquivo TMS.

Variáveis exigidas no arquivo TMS

Somente as variáveis a seguir podem ser alteradas no XML:

  • <boolean>: Substitua <boolean> por um valor true ou false.
    • Um valor true permite que o Tableau Desktop salve a configuração especificada no arquivo TMS com a pasta de trabalho. Use este valor se a sua pasta de trabalho estiver sendo publicada no Tableau Cloud ou Tableau Public.
    • Um valor false requer que o Tableau Desktop ou o Tableau Server tenha acesso ao arquivo TMS salvo na pasta Mapsources para exibir os mapas do seu servidor de mapa.
  • <server-url>: Substitua <server-url> pela URL do seu servidor de mapa.
  • <url-format>: Substitua <url-format> pelos fragmentos de URL adicionais exigidos pelo seu servidor de mapa. Isto pode incluir as seguintes marcas:
    • {Z}: A marca {Z} indica o nível de ampliar/reduzir. Um nível 0 de ampliação/redução exibe todo o mundo em um bloco de mapa. O TMS irá recuperar os blocos de mapa até o nível 16.
    • {X} e {Y}: As marcas {X} e {Y} indicam as coordenadas de bloco de mapa. Para obter mais informações sobre blocos de mapa, consulte as seguintes páginas da Web:

XML de exemplo

Suponha que queira conectar-se a um servidor de mapa de amostra fornecido por OpenStreetMaps. O arquivo TMS pode parecer com o seguinte:

<?xml version="1.0" encoding="utf-8"?>
<mapsource inline="true" version="8.1">
<connection class="OpenStreetMap" port="80" server="http://a.tile.openstreetmap.org" url-format="/{Z}/{X}/{Y}.png" />
<layers>
<layer display-name='Base' name='base' show-ui='false' type='features' request-string='/' />
</layers>
</mapsource>

Configurações de TMS avançado

É possível usar o formato de arquivo TMS avançado para tratamento especial das chaves API e controle de ampliação, diminuição e remoção dos blocos de mapa.

Observação: Na pasta Mapsources você encontrará os arquivos TMS originados do Tableau Desktop e Tableau Server. As definições são configuradas nesses arquivos e não são suportadas para conexões a outros servidores de mapa.

Chave API

Se o seu servidor de mapa esperar a chave API na URL do servidor, é possível usar a marca {K} na seção <url-format> do elemento de conexão.

É possível também separar a chave API da sua cadeia de caracteres <url-format> usando a marca {K} na sua cadeia de caracteres e colocar a chave API no atributo de nome de usuário.

O exemplo a seguir demonstra como usar a marca {K} com a chave API no atributo de nome de usuário.

<?xml version="1.0" encoding="utf-8"?> 
<mapsource inline="true" version="8.1"> 
<connection class="OpenStreetMap" port="80" server="http://a.tile.mapbox.com" url-format="/v4/base.mapbox-streets+bg-e8e0d8_landuse_water_buildings_streets/{Z}/{X}/{Y}.png?access_token={K}" username="<your-api-key>"/> 
<layers> 
<layer display-name='Base' name='base' show-ui='false' type='features' request-string='/' /> 
</layers> 
</mapsource>

Ampliação máxima e diminuição mínima

Como padrão, o Tableau receberá os blocos de mapa do servidor de mapa e os ampliará para corresponder aos seus dados. Se precisar de mais controle sobre como os blocos de mapa são exibidos, é possível definir os atributos de ampliação máxima, max-stretch e diminuição mínima min-shrink no elemento de conexão.

Se definir uma ampliação máxima e uma diminuição mínima como 1, o Tableau não ampliará ou diminuirá os blocos de mapa. Em vez disso, o Tableau encaixará a ampliação/redução do mapa aos blocos. Também é possível definir os atributos de ampliação máxima e diminuição mínima como valores próximos a 1, para permitir alguma ampliação e diminuição, bem como algum encaixe, dependendo da definição de ampliar/reduzir.

O exemplo a seguir demonstra como usar os atributos max-stretch e min-shrink.

<?xml version="1.0" encoding="utf-8"?> 
<mapsource inline="true" version="8.1"> 
<connection class="OpenStreetMap" port="80" server="http://a.tile.openstreetmap.org" url-format="/{Z}/{X}/{Y}.png" max-stretch="1.2" min-shrink="0.667"/> 
<layers> 
<layer display-name='Base' name='base' show-ui='false' type='features' request-string='/' /> 
</layers> 
</mapsource>

Remoção

Como padrão, o Tableau removerá um pouco os blocos de mapa que recebe do servidor de mapa para destacar os dados. Para controlar o nível de remoção de blocos de mapa, adicione a seção a seguir do XML diretamente antes da marca de fechamento do elemento raiz </mapsource>. É possível alterar o valor de remoção para qualquer número entre 0,0 e 1,0.

O XML a seguir é um exemplo do que pode ser colocado antes da marca de fechamento do elemento raiz, </mapsource>.

<mapsource-defaults version="8.1"> 
<style> 
<style-rule element="map"> 
<format attr="washout" value="0.0"/> 
</style-rule> 
</style> 
</mapsource-defaults>

Este artigo resolveu o problema?