Hay una pregunta similar aquí en CrossValidated, y he leído las respuestas. Mi pregunta es un poco diferente. No quiero simplemente visualizar mis datos, y de hecho lo que quiero visualizar no es fácil de visualizar con ninguno de los paquetes.
Tengo dos conjuntos de puntos ( coordenadas ) en mi parcela. Quiero agregar bordes y hacerlo similar a un gráfico. Si tengo n puntos, entonces, según la naturaleza de mi problema, necesito agregar ( n / 2 ) 2 aristas a la gráfica.
Entonces quiero agregar algunas características interactivas a mi trama. Por ejemplo, al hacer clic en un punto (vértice), todos los demás vértices que no están conectados a este vértice cliqueado deben desaparecer para tener una gráfica más lúcida y enfocada.
Traté de encontrar un paquete de visualización de red adecuado para mi proyecto, pero parece que todos usan los datos sobre la conexión de bordes o nodos y proporcionan una red basada en algún algoritmo de diseño específico. Mis datos son diferentes. Tengo las coordenadas de los nodos y quiero establecer algunos bordes entre algunos de ellos. En mis datos, los nodos tienen sus propias ubicaciones fijas y no deben moverse.
Finalmente, reduje los paquetes a ggvis
y ggplot2
. ggvis
es nuevo y fresco además de tener un diseño intencional para generar tramas interactivas. Pero descubrí que ggplot2+Shiny
también puede producir tramas interactivas. (¿Es correcto?) Además, supuse que ggplot2
las capacidades son más variadas y maduras que ggvis
: por ejemplo, ggplot2
tiene una función de zoom mientras ggvis
que no la tiene. Más importante, a medida ggvis
que crece y cambia, no quiero invertir mucho tiempo en un trabajo que se vuelve técnicamente obsoleto o con errores en un año más o menos. Pensé que este es el caso si codifico según ggvis
.
Ahora, ¿puede evaluar mi elección ( ggplot2+shiny
) y aconsejarme sobre la posibilidad de hacer lo que quiero hacer con ella?
Como no conocía ninguno de los paquetes mencionados, empecé a aprender ggplot2
del libro de Wickham y ¡me encanta! Pero tengo miedo de pasar unas semanas y descubrir que este increíble paquete no puede hacer lo que quiero hacer incluso con la ayuda de Shiny
.
PD: Quiero poner el código final en github para que los usuarios probables puedan descargarlo y ejecutarlo. Por lo tanto, no necesito hacer una aplicación web, no hay necesidad de ningún sitio web o poner el mapa interactivo en línea. Solo necesito tener una trama interactiva que se pueda ejecutar desde el interior de Rstudio.
igraph
o D3?