Eu estou usando plotrix
em R
traçar um mapa do nível estado dos EUA. Tem uma excelente função floating.pie
para colocar gráficos de pizza em cada estado.
Gostaria de saber se existem funções semelhantes dentro do plotrix
pacote para exibir gráficos de barras em cada estado? (Examinei a documentação e as funções que lidam com gráficos de barras não parecem ter essa possibilidade, mas eu só queria ter certeza.) Prefiro trabalhar no pacote plotrix, se possível, mas fique à vontade para citar outros pacotes.
Como exemplo, eu estaria interessado em produzir um mapa semelhante a este (mas para os EUA):
Para o meu mapa dos EUA, haveria 50 gráficos de barras, um para cada estado.
Eu obtive este mapa em /programming/20465070/barplots-on-a-map , mas parece que o ggsubplot não funciona na minha versão do R (semelhante ao que outros têm dito na publicação )
fonte
ggsubplot
pacote, mas agora está obsoleto e não funcionará (como você mencionou). Talvez este post possa ser um ponto de partida: stackoverflow.com/questions/36063043/…Respostas:
Sei que estou muito atrasado com isso, mas acho que encontrei uma solução bastante simples.
Se você olhar o código-fonte de
floating.pie()
(por exemplo, chamandogetAnywhere(floating.pie)
), notará que ele usa uma abordagem muito simples, porém eficaz: desenhar os segmentos de pizza como polígonos. Se tudo o que você deseja dos seus gráficos de barras são as barras (sem rótulos, eixos etc.), você pode seguir a mesma abordagem e escrever sua própria função. Aqui está uma versão rápida e suja:x
é para os valores serem representados pelas barrasxllc
eyllc
especifique a posição do canto inferior esquerdo da barra esquerda em qualquer sistema de coordenadas que você esteja usandobarwidth
emaxheight
são usados para dimensionar o tamanho das barrasAqui está uma demonstração com um
sp
enredo básico . Acho que não trabalheiplotrix
antes, mas com base em comofloating.pie
funciona, eu diria que isso também deve funcionarplotrix
.O resultado fica assim:
fonte
ggplot2 e ggvis são duas bibliotecas que podem ajudá-lo a exibir os gráficos no mapa. No ggplot2, você pode plotar bolhas no mapa e, em seguida, basta fornecer aes () as coordenadas que nada têm a ver com o tamanho e a cor da bolha. Em relação ao gráfico de barras, é necessário atribuir pelo menos 2 pares de x e y, um para a localização do gráfico de barras e o outro para a altura e largura do gráfico de barras. Em outras palavras, você precisa conhecer as coordenadas dos 4 cantos de uma barra.
fonte