No estoy seguro de que el sujeto entre en el interés CrossValidated. Me lo dirás
Tengo que estudiar un gráfico (de la teoría de gráficos ), es decir. Tengo una cierta cantidad de puntos que están conectados. Tengo una tabla con todos los puntos y los puntos de los que depende cada uno. (También tengo otra tabla con las implicaciones)
Mis preguntas son:
¿Existe un buen software (o un paquete R) para estudiar tan fácilmente?
¿Hay una manera fácil de mostrar el gráfico?
r
data-visualization
graph-theory
RockScience
fuente
fuente
Respuestas:
iGraph es una biblioteca de lenguaje cruzado muy interesante (R, Python, Ruby, C). Le permite trabajar con gráficos no dirigidos y dirigidos y tiene bastantes algoritmos de análisis ya implementados.
fuente
Hay varios paquetes para representar gráficos dirigidos y no dirigidos, matriz de incidencia / adyacencia, etc., además del gráfico ; mira por ejemplo en la vista de tareas gR .
Para la visualización y el cálculo básico, creo que el paquete igraph es confiable, además de Rgraphviz (en BioC como lo señaló @Rob). Tenga en cuenta que para que este último funcione correctamente, graphviz también debe estar instalado. El paquete igraph tiene buenos algoritmos para crear buenos diseños, al igual que graphviz .
Aquí hay un ejemplo de uso, comenzando desde una matriz de adyacencia falsa:
fuente
Aparte de lo que se ha dicho, solo para la tarea de uso habitual (y fuera de R), es posible que le interese comprobar Gephi .
fuente
Otra opción es el paquete statnet. Statnet tiene funciones para todas las medidas comúnmente utilizadas en SNA, y también puede estimar modelos ERG. Si tiene sus datos en una lista de bordes, lea los datos de la siguiente manera (suponiendo que su marco de datos esté etiquetado como "lista de bordes"):
Si sus datos están en una matriz de adyacencia, reemplace el argumento matrix.type con "adyacencia":
El paquete statnet tiene algunas capacidades de trazado muy agradables. Para hacer un diagrama simple simplemente escriba:
Para escalar los nodos de acuerdo con su centralidad intermedia, simplemente haga:
Por defecto, la función gplot usa el algoritmo Fruchterman-Reingold para colocar los nodos, sin embargo, esto se puede controlar desde la opción de modo, por ejemplo, para usar MDS para la colocación de nodos tipo:
o para usar un diseño circular:
Hay muchas más posibilidades, y esta guía cubre la mayoría de las opciones básicas. Para un ejemplo autónomo:
fuente
Se hizo una pregunta similar en teoría, también si está específicamente interesado en gráficos planos o visualización bibliográfica .
Gephi ya se mencionó aquí, pero también algunos lo recomendaron en teoría, por lo que creo que es una buena opción.
Otras opciones interesantes incluyen:
fuente
NodeXL me pareció muy útil y fácil de usar. Es una plantilla de MS Excel que proporciona fácil importación / exportación de un gráfico, formateo de bordes / vértices, calcula algunas métricas, tiene algunos algoritmos de agrupamiento. Puede usar fácilmente imágenes personalizadas como vértices.
Otra herramienta útil para mí fue el diseño de Microsoft Automatic Graph, que proporciona un buen diseño que se puede probar en línea (con un navegador que admita SVG).
fuente