Estoy usando plotrixen Rtrazar un mapa a nivel estatal de los EE.UU.. Tiene una función excelente floating.piepara colocar gráficos circulares en cada estado.
Me pregunto si hay funciones similares dentro del plotrixpaquete para mostrar gráficos de barras en cada estado. (Eché un vistazo a la documentación y las funciones que se ocupan de los gráficos de barras no parecen tener esta posibilidad, pero solo quería estar seguro.) Prefiero trabajar dentro del paquete plotrix si es posible, pero siéntase libre de nombrar Otros paquetes.
Como ejemplo, me interesaría producir un mapa similar a este (pero para los EE. UU.):
Para mi mapa de EE. UU., Habría 50 gráficos de barras, uno para cada estado.
Obtuve este mapa de /programming/20465070/barplots-on-a-map , pero parece que ggsubplot no funciona en mi versión de R (similar a lo que otros han estado diciendo en la publicación )
fuente


ggsubplotpaquete, pero ahora está en desuso y no funcionará (como mencionaste). Quizás esta publicación pueda ser un punto de partida: stackoverflow.com/questions/36063043/…Respuestas:
Sé que realmente llego tarde con esto, pero creo que he encontrado una solución bastante simple.
Si observa el código fuente de
floating.pie()(por ejemplo, llamandogetAnywhere(floating.pie)), notará que utiliza un enfoque muy simple pero efectivo: dibujar los segmentos circulares como polígonos. Si todo lo que desea de sus gráficos de barras son las barras (sin etiquetas, ejes, etc.), puede seguir el mismo enfoque y escribir su propia función. Aquí hay una versión rápida y sucia:xes para que los valores sean representados por las barrasxllcyyllcespecifique la posición de la esquina inferior izquierda de la barra izquierda en cualquier sistema de coordenadas que esté utilizandobarwidthymaxheightse usan para escalar el tamaño de las barrasAquí hay una demostración con una
sptrama básica . No creo que haya trabajadoplotrixantes, pero en función de cómofloating.piefunciona, asumiría que esto también debería funcionarplotrix.El resultado se ve así:
fuente
mapbarsse define en el primer gran bloque de código, donde se dicemapbars <- function (x, xllc = 0, .... Deberá ejecutar primero toda esa sección de código para "enseñar" a R el nuevo comando.ggplot2 y ggvis son dos bibliotecas que pueden ayudarlo a mostrar las parcelas en el mapa. En ggplot2 puede trazar burbujas en el mapa y luego solo necesita dar aes () las coordenadas que no tienen nada que ver con el tamaño y el color de la burbuja. Con respecto al gráfico de barras, debe asignar al menos 2 pares de x e y, uno para la ubicación del gráfico de barras y el otro para la altura y el ancho del gráfico de barras. En otras palabras, necesitas conocer las coordenadas de 4 esquinas para una barra.
fuente