Estoy buscando un software [gratuito] que pueda producir modelos gráficos atractivos, p. Ej.
Cualquier sugerencia sera apreciada.
Estoy buscando un software [gratuito] que pueda producir modelos gráficos atractivos, p. Ej.
Cualquier sugerencia sera apreciada.
Respuestas:
Actualmente tengo un problema similar (dibujar múltiples diagramas de ruta para mi disertación), por lo que ya estaba examinando muchas de las opciones enumeradas aquí para dibujar diagramas similares. Muchos de los recursos enumerados para dibujar tales gráficos vectoriales (como en Microsoft Office o dibujos de Google) pueden producir diagramas de ruta realmente agradables, con un esfuerzo bastante mínimo. Pero, parte de la razón por la que no estaba satisfecho con dichos programas es que necesitaba producir muchos diagramas, con solo cambios bastante menores entre cada diagrama (por ejemplo, agregar otro nodo, cambiar una etiqueta). Las herramientas de gráficos vectoriales de apuntar y hacer clic no son adecuadas para esto, y requieren más esfuerzo del necesario para realizar cambios menores. También se hace difícil mantener una plantilla entre muchos dibujos. Entonces, decidí examinar las opciones para producir dichos gráficos programáticamente.
Graphviz, como ya fue mencionado por thias, estuvo muy cerca de tener todas las campanas y silbatos que quería para mis gráficos (así como también un código bastante simple para producirlos), pero se quedó corto para mis necesidades de dos maneras; 1) faltan fuentes matemáticas (por ejemplo, no estoy seguro de si puede etiquetar un nodo con el símbolo en Graphviz, 2) las líneas curvas son difíciles de dibujar (vea esta publicación sobre diagramas de trazado de dibujo usando Graphviz en el sitio web de @ Stask) . Debido a estas limitaciones, actualmente me he decidido (muy felizmente) a usar la biblioteca de dibujo Tikz / pgf en Latex. A continuación se muestra un ejemplo de mi intento de reproducir su gráfico (¡el mayor dolor fueron las etiquetas en las esquinas inferiores derechas de las cajas!);
\documentclass[11pt]{report}
\usepackage{tikz}
\usetikzlibrary{fit,positioning}
\begin{document}
\begin{figure}
\centering
\begin{tikzpicture}
\tikzstyle{main}=[circle, minimum size = 10mm, thick, draw =black!80, node distance = 16mm]
\tikzstyle{connect}=[-latex, thick]
\tikzstyle{box}=[rectangle, draw=black!100]
\node[main, fill = white!100] (alpha) [label=below:$\alpha$] { };
\node[main] (theta) [right=of alpha,label=below:$\theta$] { };
\node[main] (z) [right=of theta,label=below:z] {};
\node[main] (beta) [above=of z,label=below:$\beta$] { };
\node[main, fill = black!10] (w) [right=of z,label=below:w] { };
\path (alpha) edge [connect] (theta)
(theta) edge [connect] (z)
(z) edge [connect] (w)
(beta) edge [connect] (w);
\node[rectangle, inner sep=0mm, fit= (z) (w),label=below right:N, xshift=13mm] {};
\node[rectangle, inner sep=4.4mm,draw=black!100, fit= (z) (w)] {};
\node[rectangle, inner sep=4.6mm, fit= (z) (w),label=below right:M, xshift=12.5mm] {};
\node[rectangle, inner sep=9mm, draw=black!100, fit = (theta) (z) (w)] {};
\end{tikzpicture}
\end{figure}
\end{document}
%note - compiled with pdflatex
Ahora, ya estoy escribiendo mi disertación en Latex, por lo que si solo desea la imagen sin tener que compilar un documento completo de Latex, es un poco inconveniente, pero hay algunas soluciones bastante menores para producir una imagen más directamente (vea esta pregunta más adelante). en stackoverflow). Sin embargo, hay una gran cantidad de otros beneficios para usar Tikz para tal proyecto
En este momento no he considerado algunas de las bibliotecas para dibujar los diagramas en el paquete estadístico R directamente de los modelos especificados, pero en el futuro podría considerarlos en mayor medida. Hay algunos buenos ejemplos de la biblioteca qgraph para una prueba de concepto de lo que se puede lograr en R.
Laura Dietz ha escrito una biblioteca muy agradable para tikz que permite dibujar Bayesian Networks en látex sin necesidad de usar tikz directamente.
Para demostrar este paquete, consulte el siguiente ejemplo para esta pregunta:
\documentclass[11pt]{report}
\usepackage{tikz}
\usetikzlibrary{bayesnet}
\begin{document}
\begin{figure}
\centering
\tikz{ %
\node[latent] (alpha) {$\alpha$} ; %
\node[latent, right=of alpha] (theta) {$\theta$} ; %
\node[latent, right=of theta] (z) {z} ; %
\node[latent, above=of z] (beta) {$\beta$} ; %
\node[obs, right=of z] (w) {w} ; %
\plate[inner sep=0.25cm, xshift=-0.12cm, yshift=0.12cm] {plate1} {(z) (w)} {N}; %
\plate[inner sep=0.25cm, xshift=-0.12cm, yshift=0.12cm] {plate2} {(theta) (plate1)} {M}; %
\edge {alpha} {theta} ; %
\edge {theta} {z} ; %
\edge {z,beta} {w} ; %
}
\end{figure}
\end{document}
%note - compiled with pdflatex
Si bien no es exactamente lo mismo, ciertamente transmite la misma información y podría modificarse para ajustarse mejor a los requisitos específicos. Este paquete genera cifras muy aceptables sin necesidad de aprender el paquete completo de tikz.
No puedes vencer a http://daft-pgm.org/
Daft es un paquete de Python que usa matplotlib para representar modelos gráficos probabilísticos con píxeles perfectos para su publicación en una revista o en Internet. Con un breve script de Python y una sintaxis intuitiva de construcción de modelos, puede diseñar modelos dirigidos (redes bayesianas, gráficos acíclicos dirigidos) y no dirigidos (campos aleatorios de Markov) y guardarlos en cualquier formato que sea compatible con matplotlib (incluidos PDF, PNG, EPS y SVG )
Inkscape es esencialmente una versión gratuita de Adobe Illustrator, y es un programa muy fuerte para hacer gráficos vectoriales, como la imagen que publicaste. También funciona bastante bien con la mayoría de los paquetes estadísticos para realizar ediciones finales / anotaciones / etc. a gráficos: R, SAS, etc. puede generar un gráfico como PDF u otro formato vectorial (como .eps), y luego puede llevarlo a Inkscape para jugar con colores, símbolos, etiquetas de eje, etc.
Si tiene un interés particular en usar LaTeX, el programa LaTeXDraw tiene una buena funcionalidad para crear diagramas de flujo con código de látex incrustado.
Importa / exporta código PSTricks y SVG, y también puede exportar svg, pdf, eps, jpg, png, etc. Se ejecuta en Linux, Mac OS X y Windows.
He encontrado que Diagrammix es un paquete muy flexible, disponible para Mac OS X. Es un paquete de gráficos vectoriales bien redondeado y hace un buen trabajo en los modelos gráficos. Es bastante económico y tiene algunos buenos complementos que han ayudado a mejorar las formas y direcciones de los bordes.
Diagrammix
como lo hicieron algunas respuestas.
Puedes probar Google Docs Draw . Parece que hará lo que quieras de forma gratuita, directamente en tu navegador.
Puedes ir por PlantUML . Es de código abierto y bastante flexible.
También puedes usar el Lucidchart web .
Lo he usado en el pasado para dibujar gráficos y es gratis.