Tôi muốn lập trình tạo sơ đồ như thế này http://yaroslavvb.com/upload/junction-tree-decomposition.pnglời khuyên cho việc tạo sơ đồ Graph
Tôi tưởng tượng tôi nên sử dụng GraphPlot với VertexCoordinateRules, VertexRenderingFunction và EdgeRenderingFunction cho đồ thị. Tôi nên sử dụng gì cho các nền có màu vát?
Sửa Sử dụng những ý tưởng chủ yếu của Simon, đây là một phiên bản "ít mạnh mẽ" đơn giản tôi đã kết thúc bằng
Needs["GraphUtilities`"]; GraphPlotHighlight[edges_, verts_, color_] := Module[{}, vpos = Position[VertexList[edges], Alternatives @@ verts]; coords = Extract[GraphCoordinates[edges], vpos]; (* add .002 because end-cap disappears when segments are almost colinear *) AppendTo[coords, First[coords] + .002]; Show[Graphics[{color, CapForm["Round"], JoinForm["Round"], Thickness[.2], Line[coords], Polygon[coords]}], GraphPlot[edges], ImageSize -> 150] ] SetOptions[GraphPlot, VertexRenderingFunction -> ({White, EdgeForm[Black], Disk[#, .15], Black, Text[#2, #1]} &), EdgeRenderingFunction -> ({Black, Line[#]} &)]; edges = GraphData[{"Grid", {3, 3}}, "EdgeRules"]; colors = {LightBlue, LightGreen, LightRed, LightMagenta}; vsets = {{8, 5, 2}, {7, 5, 8}, {9, 6, 3}, {8, 1, 2}}; MapThread[GraphPlotHighlight[edges, #1, #2] &, {vsets, colors}]
http://yaroslavvb.com/upload/mathematica-graphs.png
Sơn? : D Chỉ là một trò đùa –
Làm thế nào bạn làm cho các đồ thị được sử dụng trong câu hỏi của bạn? – Simon
Tìm thấy chúng trên web. Tôi nghi ngờ nó đã được thực hiện với một số gói Latex –