C'è una domanda simile qui in CrossValidated e ho letto le risposte. La mia domanda è un po 'diversa. Non voglio semplicemente visualizzare i miei dati, e in effetti ciò che voglio visualizzare non è facile da visualizzare con nessuno dei due pacchetti.
Ho due serie di punti ( coordinate ) sulla mia trama. Voglio aggiungere bordi e renderlo simile a un grafico. Se ho n punti, quindi in base alla natura del mio problema, devo aggiungere ( n / 2 ) 2 bordi alla trama.
Quindi voglio aggiungere alcune funzionalità interattive alla mia trama. Ad esempio, facendo clic su un punto (vertice), tutti gli altri vertici che non sono collegati a questo vertice cliccato devono scomparire per avere una trama più lucida e focalizzata.
Ho cercato di trovare un pacchetto di visualizzazione di rete adatto al mio progetto, ma sembra che tutti usino i dati sulla connessione di bordi o nodi e forniscano una rete basata su un algoritmo di layout specifico. I miei dati sono diversi. Ho le coordinate dei nodi e voglio stabilire dei bordi tra alcuni di essi. Nei miei dati i nodi hanno le loro posizioni fisse e non devono essere spostati.
Alla fine, ho ristretto i pacchetti a ggvis
e ggplot2
. ggvis
è nuovo e fresco oltre ad avere un design intenzionale per generare grafici interattivi. Ma ho scoperto che ggplot2+Shiny
può anche produrre trame interattive. (È corretto?) Inoltre, ho pensato che ggplot2
le capacità fossero più varie e maturate di ggvis
: ad esempio ggplot2
ha una funzione di zoom mentre ggvis
non ce l'ha. Ancora più importante, poiché ggvis
cresce e cambia, non voglio investire molto tempo in un'opera che diventa tecnicamente obsoleta o buggy in circa un anno. Ho pensato che questo fosse il caso se ho basato il codice ggvis
.
Ora potresti per favore valutare la mia scelta ( ggplot2+shiny
) e consigliarmi sulla possibilità di fare quello che voglio farci?
Dato che non conoscevo nessuno dei pacchetti citati, ho iniziato a imparare ggplot2
dal libro di Wickham e lo adoro! Ma ho paura di passare qualche settimana e scoprire che questo fantastico pacchetto non può fare quello che voglio fare nemmeno con l'aiuto di Shiny
.
PS: Voglio mettere il codice finale su github in modo che gli utenti probabili possano scaricarlo ed eseguirlo. Pertanto, non è necessario creare un'applicazione Web, non è necessario alcun sito Web o mettere online la mappa interattiva. Devo solo avere un grafico interattivo che può essere eseguito dall'interno di Rstudio.
igraph
o D3?