Visualizando recursos agrupados em mapas da web?


15

Estou procurando o melhor símbolo para exibir recursos em cluster na API JS do ArcGIS Server.

Não gosto do símbolo de cluster animado "suspenso", conforme usado no cluster da API do Silverlight ou na amostra de cluster JS (eles parecem um pouco enigmáticos).

Até agora, a melhor opção que encontrei é o símbolo do cluster do Google Maps .

Não mostrarei um número no centro do símbolo do cluster, mas variarei o tamanho do símbolo para mostrar concentrações de recursos, como nesta maquete:

insira a descrição da imagem aqui

Que outras opções de símbolo de cluster existem? Você pode me indicar um mapa mostrando uma boa implementação do agrupamento de marcadores?


Você está limitado a um símbolo de ponto?
Andy W

@AndyW Estou exibindo recursos de ponto, mas não estou necessariamente restrito a um símbolo de ponto. A imagem de exemplo acima usa símbolos de marcador de imagem, se isso ajudar.
Stephen Lead

As respostas variadas sugerem que algum esclarecimento adicional ajudaria; especificamente, em que sentido você quer dizer "melhor símbolo"? Provavelmente depende da aplicação e do público e, plausivelmente, poderia significar "mais bonita", "mais fácil de implementar", "mais fácil para os espectadores reconhecerem e discriminarem" ou "permitir a avaliação quantitativa mais precisa". As melhores soluções nesses sentidos podem ser mapas de calor, marcadores do Google ou Bing, quem sabe, e parcelas de girassol, respectivamente, mas a maioria dessas soluções é igualmente ruim em outros aspectos.
whuber

@whuber "O objetivo mais fácil para usuários não especialistas entenderem o que está acontecendo sem instruções". A localização precisa dos recursos não é tão importante quanto o fato de alguns serem "pontos únicos" e outros serem "pontos em cluster". É óbvio que há mais recursos em alguns locais e menos recursos em outras áreas? O mapa acima funciona para mim, mas esse é o caso para todos e é a melhor solução possível? obrigado
Stephen Lead

1
Sem uma lenda, não consigo entender o seu exemplo. Mesmo conhecendo sua intenção, não consigo lê-lo com precisão, porque não tenho idéia de qual é a relação entre o tamanho do símbolo e o tamanho do cluster (é o diâmetro do círculo, a área do círculo ou algo mais?) Qual é o azul / distinção vermelha tentando transmitir? Se você deseja evitar instruções, precisa usar os métodos cognitivamente mais eficazes para fazer distinções e transmitir quantidades conhecidas (como usar leveza, em vez de matiz, para transmitir intensidade de uma quantidade) e estar preparado para qualquer mal-entendido.
whuber

Respostas:


10

Na cartografia tradicional, o agrupamento de marcadores é chamado agregação ou, às vezes, amálgama. Isso faz parte da generalização do modelo : ao diminuir o zoom, alguns conceitos detalhados (por exemplo, a árvore) desaparecem para serem substituídos por formas agregadas menos detalhadas (por exemplo, a floresta).

Muitos bons exemplos podem ser encontrados em bons livros de cartografia. Aqui estão dois exemplos deste livro sobre a construção de agregação:

insira a descrição da imagem aqui

insira a descrição da imagem aqui

digite a descrição do link aqui http://www.ailleursloin.free.fr/A/depot/village_generalise_200k_sans_bati.jpg

Suponho que você esteja procurando mais métodos operacionais para fazê-lo automaticamente. Esta apresentação fornece uma visão geral dos métodos automáticos existentes. Você pode ter recursos para desenvolver alguns dos algoritmos mostrados ... Caso contrário, você pode encontrou uma aplicação java de este algoritmo (que permitem construir o envelope de símbolos distantes) , e também este algoritmo .

Os mapas de calor também são uma boa alternativa para esse problema. Veja uma implementação. Veja também maptimize .

insira a descrição da imagem aqui


1
Obrigado pela resposta detalhada. Na verdade, estou muito feliz com o algoritmo real que estou usando - uma modificação desse script de exemplo -, por isso estou mais preocupado com a simbologia ou representação dos recursos em cluster. Eu gosto da abordagem do mapa de calor, mas não há pontos suficientes no meu caso, pois os recursos não são especialmente densos. Mais uma vez obrigado
Stephen Lead

Você poderia atualizar os links quebrados, por favor?
precisa saber é

7

Há muitas opções e, de fato, lutei com a mesma pergunta há algum tempo em alguns de meus aplicativos. E para nossos produtos diferentes, acabamos com soluções diferentes. Então você tem que se perguntar

  1. Todos os ícones singleton no mapa são do mesmo "tipo" - mesma forma e cor?
  2. Se não estiverem, todos eles vivem em uma ou várias camadas?
  3. Se for múltiplo, você agrupará cada camada individual ou clustering de camada cruzada?
  4. Se você estiver agrupando camadas individuais, e se os ícones se sobreporem às camadas, você terá um cluster de clusters?
  5. Você precisa saber "que" tipo de coisa está sendo agrupada ou apenas "ei, há um cluster" no mapa. E acima, você disse que não precisa saber quantos itens existem apenas olhando o ícone do cluster.

Aqui estão alguns exemplos e o que eles significam e como são feitos. Tudo é feito com um algoritmo de cluster personalizado, não com a estratégia de cluster do Bing (1ª imagem) ou OL (2º). Dessa forma, tenho muito mais controle sobre a aparência.

Marcador de cluster transparente

Captura de tela de um aplicativo Bing; temos várias camadas de diferentes tipos e cores de ícones. Optamos por agrupar os ícones, depois ocultar tudo pelo ícone mais alto (mais importante) do cluster e, em seguida, o ícone mais alto é sobreposto por uma imagem transparente. Digamos que meus ícones sejam 20x20, o indicador de cluster é uma imagem 30x30 80% transparente, exceto que possui um PLUS no canto superior direito. Portanto, quando sobreposto ao ícone "representativo" do cluster, parece que tenho um conjunto de coisas por baixo. Quando o usuário passa o mouse ou clica, o evento vai para o ícone do cluster e ele recebe a mensagem "N número de itens em cluster" e pode clicar ou pesquisar mais para obter mais informações.

insira a descrição da imagem aqui

Nesta situação, adotamos uma abordagem mais simples. Os ícones ainda vivem em diferentes camadas e têm significado diferente e agrupamos as camadas cruzadas, no entanto, o ícone representativo é apenas um grande sinal PLUS [que varia de tamanho até um determinado limite].

Então, basicamente, escolhemos um "MAIS" "+" para indicar um cluster nos dois aplicativos, mas seguimos rotas diferentes sobre como colocá-lo no mapa - sobreponha os ícones existentes do mapa para dar mais significado ao mapa ou apenas limpe o mapa e coloque um PLUS e deixe o usuário pesquisar mais para obter mais informações.


Obrigado pela resposta detalhada. Nesse caso, todos os recursos estão na mesma camada, mas você levanta alguns pontos interessantes nos casos em que não estão. A abordagem + é interessante #
Stephen Lead

5

Você pode obter alguma inspiração nas plantas de girassol . Esse método, usado há décadas para representar grupos de pontos em gráficos de dispersão, capitaliza a pesquisa em cognição visual para produzir marcadores que são rápida e corretamente discriminados, além de claramente relacionados aos tamanhos dos grupos que representam.

Aqui está um exemplo feito em R:

insira a descrição da imagem aqui

É preciso pouca imaginação para ver como a técnica pode ser aplicada para fazer mapas mais gerais do que gráficos de dispersão.


Bill, obrigado pela dica - o gráfico de girassol é muito legal e funciona bem no gráfico de dispersão. Não é realmente adequado para o meu caso, já que o site é voltado para usuários iniciantes e isso seria um exagero. (PS A abordagem heatmap tomadas por Fusion Tables pode também trabalhar no gráfico de dispersão? Geochalkboard.files.wordpress.com/2010/03/fusion2.png )
Stephen Chumbo

1
@ Stephen As gradações de cores tendem a não funcionar tão bem para a leitura quantitativa dos gráficos (ou seja, com precisão e rapidez). Para cerca de 6% da população, é difícil discernir uma graduação de vermelho para verde (como mostrado no exemplo). Um corpo crescente de literatura em visualização de dados quantitativos sugere que não devemos ser rápidos em limitar a qualidade de nossos gráficos, supondo que usuários iniciantes não serão capazes de apreciá-los ou usá-los. Leia Tufte, Cleveland ou Wainer, por exemplo.
whuber
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.