Tôi đang tìm kiếm phần mềm [miễn phí] có thể tạo ra các mô hình đồ họa đẹp mắt, ví dụ:
Mọi lơi đê nghị đêu nên được đanh gia cao.
Tôi đang tìm kiếm phần mềm [miễn phí] có thể tạo ra các mô hình đồ họa đẹp mắt, ví dụ:
Mọi lơi đê nghị đêu nên được đanh gia cao.
Câu trả lời:
Tôi hiện đang có một vấn đề tương tự (vẽ nhiều sơ đồ đường dẫn cho luận án của mình), và vì vậy tôi đã kiểm tra nhiều tùy chọn được liệt kê ở đây để vẽ sơ đồ tương tự. Nhiều tài nguyên được liệt kê để vẽ đồ họa vector như vậy (chẳng hạn như trong văn phòng microsoft hoặc bản vẽ google) có thể tạo ra các sơ đồ đường dẫn thực sự tốt đẹp, với nỗ lực khá tối thiểu. Nhưng, một phần lý do khiến tôi không hài lòng với các chương trình như vậy là tôi cần tạo ra nhiều sơ đồ, chỉ có những thay đổi khá nhỏ giữa mỗi sơ đồ (ví dụ: thêm một nút khác, thay đổi nhãn). Các công cụ đồ họa vector điểm và nhấp không phù hợp cho việc này và mất nhiều công sức hơn là cần thực hiện các thay đổi nhỏ như vậy. Ngoài ra, nó trở nên khó khăn để duy trì một mẫu giữa nhiều bản vẽ. Vì vậy, tôi quyết định kiểm tra các tùy chọn để tạo ra đồ họa như vậy theo chương trình.
Graphviz, như đã được đề cập bởi thias, đã thực sự gần như có tất cả chuông và còi tôi muốn cho đồ họa của mình (cũng như mã khá đơn giản để sản xuất chúng), nhưng nó không phù hợp với nhu cầu của tôi theo hai cách; 1) thiếu phông chữ toán học (ví dụ: Tôi không chắc liệu bạn có thể gắn nhãn một nút có ký hiệu trong Graphviz không, 2) các đường cong khó vẽ (xem bài đăng này về vẽ sơ đồ đường dẫn bằng cách sử dụng Graphviz trên trang web của @ Stask) . Vì những hạn chế này, hiện tại tôi đã giải quyết (rất vui) khi sử dụng thư viện vẽ Tikz / pgf trong latex. Một ví dụ dưới đây là nỗ lực của tôi trong việc tái tạo đồ họa của bạn (nỗi đau lớn nhất là các nhãn ở góc dưới bên phải của các hộp!);
\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
Bây giờ, tôi đang đã viết lên luận án của tôi trong Latex, vì vậy nếu bạn chỉ muốn hình ảnh mà không cần phải biên dịch một tài liệu toàn Latex nó là hơi inconveniant, nhưng có một số cách giải quyết khá nhỏ để tạo ra một hình ảnh trực tiếp hơn (xem câu hỏi này trên trên stackoverflow). Có rất nhiều lợi ích khác khi sử dụng Tikz cho một dự án như vậy
Tại thời điểm này tôi chưa xem xét một số thư viện để vẽ sơ đồ trong gói thống kê R trực tiếp từ các mô hình đã chỉ định, nhưng trong tương lai tôi có thể xem xét chúng ở mức độ lớn hơn. Có một số ví dụ hay từ thư viện qgraph cho một bằng chứng về khái niệm về những gì có thể đạt được trong R.
Laura Dietz đã viết một thư viện rất hay cho tikz cho phép vẽ Bayesian Networks bằng latex mà không cần thực sự sử dụng trực tiếp tikz.
Để chứng minh gói này, xem ví dụ sau cho câu hỏi này:
\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
Mặc dù không hoàn toàn giống nhau, nhưng nó chắc chắn truyền tải cùng một thông tin và có thể được điều chỉnh để phù hợp hơn với các yêu cầu cụ thể. Gói này tạo ra các số liệu rất chấp nhận được mà không cần phải tìm hiểu gói tikz đầy đủ.
Bạn không thể đánh bại http://daft-pgm.org/
Daft là gói Python sử dụng matplotlib để hiển thị các mô hình đồ họa xác suất hoàn hảo pixel để xuất bản trên tạp chí hoặc trên internet. Với tập lệnh Python ngắn và cú pháp xây dựng mô hình trực quan, bạn có thể thiết kế các mô hình được định hướng (Bayesian Networks, đồ thị theo chu kỳ có hướng) và các mô hình không bị chặn (trường ngẫu nhiên Markov) và lưu chúng ở bất kỳ định dạng nào mà matplotlib hỗ trợ (bao gồm PDF, PNG, EPS và SVG ).
Inkscape về cơ bản là một phiên bản Adobe Illustrator miễn phí và là một chương trình rất mạnh để thực hiện đồ họa vector, giống như hình ảnh bạn đã đăng. Nó cũng chơi khá độc đáo với hầu hết các gói thống kê để thực hiện các chỉnh sửa / chú thích cuối cùng / v.v. thành biểu đồ - R, SAS, v.v. có thể xuất một biểu đồ dưới dạng PDF hoặc định dạng vectơ khác (như .eps), sau đó bạn có thể đưa nó vào Inkscape để xử lý các màu, ký hiệu, nhãn trục, v.v.
Nếu bạn có sở thích đặc biệt khi sử dụng LaTeX, chương trình LaTeXDraw có một số chức năng hay để tạo biểu đồ luồng với mã latex nhúng.
Nó nhập / xuất mã PSTricks và SVG, và cũng có thể xuất svg, pdf, eps, jpg, png, v.v. Nó chạy trong Linux, Mac OS X và Windows.
Tôi đã tìm thấy Diagrammix là một gói rất linh hoạt, có sẵn cho Mac OS X. Đây là một gói đồ họa vector được làm tròn tốt và làm rất tốt các mô hình đồ họa. Nó khá rẻ và có một số tiện ích bổ sung tốt đã giúp cải thiện hình dạng và hướng của các cạnh.
Diagrammix
giống như một số câu trả lời đã làm.
Bạn có thể dùng thử Google Docs Draw . Có vẻ như nó sẽ làm những gì bạn muốn miễn phí, ngay trong trình duyệt của bạn.
Bạn có thể dùng PlantUML . Nó là nguồn mở và khá linh hoạt.
Bạn cũng có thể sử dụng ứng dụng web Lucidchart .
Tôi đã sử dụng nó trong quá khứ để vẽ đồ thị và nó miễn phí.
bạn có thể sử dụng draw.io và sử dụng một hoặc nhiều mẫu của chúng để tạo các biểu tượng này. Nó giúp bạn tạo SVG hoặc bất kỳ định dạng nào khác. và không yêu cầu bạn cài đặt bất cứ thứ gì trên hệ thống của bạn.