首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何以编程方式访问数学8中的“图形”对象的信息?

如何以编程方式访问数学8中的“图形”对象的信息?
EN

Stack Overflow用户
提问于 2011-06-11 12:22:59
回答 3查看 630关注 0票数 7

我正在数学8中尝试访问Graph对象中的信息。由于某种原因,Part命令似乎不起作用。

myGraph是我想要访问的对象。

下面的第一行显示myGraph。其他人负责检查它。

代码语言:javascript
运行
复制
myGraph

myGraph // FullForm  
myGraph // InputForm  
myGraph // OutputForm    
myGraph[[1]]
myGraph[[2]]  

为什么myGraph[[1]]不返回List[1,3,4,2,5]?[我检查到了级别2,以防Graph被某个不可见的包装包装。Level[myGraph,1],只需返回{}FullForm[myGraph][[1]]返回图本身的图片。

我一定是忽略了一些明显的东西。

编辑

这是我用来生成图表的代码。其中大部分都与眼前的问题无关。但至少您将使用我使用的相同的代码。

代码语言:javascript
运行
复制
ClearAll[edges, compatibleQ, adjacentCourses, g];
edges[w_, b_] := 
 Most /@ Accumulate /@ 
   Flatten[Permutations[#] & /@ IntegerPartitions[w, All, b], 1]

compatibleQ[j_, k_, edg_] := 
 If[Intersection[edg[[j]], edg[[k]]] == {}, {j, k}, False]

adjacentCourses[edg_] := 
 Module[{len = Length[edg]},
  Cases[Flatten[Table[compatibleQ[j, k, edg], {j, len}, {k, j, len}], 
    1], {v_, w_} :>  v \[UndirectedEdge] w]]

myGraph =  Graph[adjacentCourses[edges[9, {2, 3}]], VertexLabels -> "Name", 
ImagePadding -> 10]
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-06-11 14:36:35

尽管有表象,但Mathematica 8中引入的图形对象并不是“正常”的符号表达式。下面这个问题详细讨论了这个问题和其他此类问题,包括提取图定义部分的方法:

数学8.0中的新图

票数 8
EN

Stack Overflow用户

发布于 2011-06-11 13:34:18

这可能对你有用,可以回答这个问题。

“我如何以编程方式在Mathematica 8中访问有关‘Graph’对象的信息?”

似乎有许多新的函数用于获取有关图的一些信息,如http://reference.wolfram.com/mathematica/guide/GraphRepresentation.html所列。

在您的示例中,您似乎希望图的顶点列表的顺序是正确的。函数VertixList似乎就是这样做的。

以下是文档中Properties & Relations部分的截图:

票数 5
EN

Stack Overflow用户

发布于 2011-06-12 05:58:20

原来我的问题有一些直接的答案。

Graph文档包含从Graph对象检索信息的几种方法。(真可惜我没查过。)在我看来,最有用的命令是:

代码语言:javascript
运行
复制
VertexList[]
VertexCount[]
EdgeList[]
EdgeCount[]
EdgeRules[] 
VertexIndex[]
EdgeIndex[]
PropertyValue[]

我们需要从图形对象中获取信息,通常是在我们对其进行操作之后。我可以很容易地找到我构建的图中的信息,但是如果输出了一个导数图,例如从NeighborhoodGraph,我就不会知道它的性质。

感谢@dbJohn提供到Wolfram文档的链接。

特别感谢@WReach在先前关于他的评论对象的讨论中提供了指向Graph的链接。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6315899

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档