Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在windows+;无类型错误_Python_Nodebox - Fatal编程技术网

Python 在windows+;无类型错误

Python 在windows+;无类型错误,python,nodebox,Python,Nodebox,我已经在我的机器上安装了适用于windows的nodebox 2,并验证了所有示例都按原样运行 现在我想使用图形库来实现同样的功能 我将它复制到我的SitePackages文件夹中,然后在空闲状态下运行它提供的示例 我收到了一个ximport的错误。因此,我从nodebox.graphics import* 现在我得到以下错误 回溯(最近一次呼叫最后一次): 文件“C:\Python26\Lib\site packages\graph\graph\u example2.py”,第39行,在 g、

我已经在我的机器上安装了适用于windows的nodebox 2,并验证了所有示例都按原样运行

现在我想使用图形库来实现同样的功能

我将它复制到我的SitePackages文件夹中,然后在空闲状态下运行它提供的示例

我收到了一个ximport的错误。因此,我从nodebox.graphics import*

现在我得到以下错误

回溯(最近一次呼叫最后一次):

文件“C:\Python26\Lib\site packages\graph\graph\u example2.py”,第39行,在
g、 绘制(突出显示=路径,加权=真,定向=真)

文件“C:\Python26\lib\site packages\graph\\uuuu init\uuuu.py”,第453行,在绘图中
self.update()

文件“C:\Python26\lib\site packages\graph\\uuuu init\uuuu.py”,第416行,在更新中
self.x=\u ctx.WIDTH-max.x*self.d-min\ux*self.d

AttributeError:“非类型”对象没有属性“宽度”

有没有办法在windows中从nodebox外部运行此库

谢谢

我正在粘贴下面的错误代码

from nodebox.graphics import *
try:
    graph = ximport("graph")
except ImportError:
    graph = ximport("__init__")
    reload(graph)

size(600, 600)

# A graph object.
g = graph.create(iterations=500, distance=1.0)

# Add nodes with a random id,
# connected to other random nodes.
for i in range(50):
    node1 = g.add_node(random(500))
    if random() > 0.5:
        for i in range(choice((2, 3))):
             node2 = choice(g.nodes)
             g.add_edge(node1.id, node2.id, weight=random())

# We leave out any orphaned nodes.
g.prune()

# Colorize nodes.
# Nodes with higher importance are blue.
g.styles.apply()

# Update the graph layout until it's done.
g.solve()

# Show the shortest path between two random nodes.
path = []
id1 = choice(g.keys())
id2 = choice(g.keys())
path = g.shortest_path(id1, id2)

# Draw the graph and display the shortest path.
g.draw(highlight=path, weighted=True, directed=True)
用户表示,它支持Nodebox 1.9.5.6,这是Nodebox 1(仅限Mac)的版本号。据我所知,图形库尚未移植到Nodebox 2,因此目前只能在Mac上运行


一个选项是名为Nodebox OpenGL的项目,该项目实现了Nodebox API,并包含自己的图形库,在
examples\08 physics\07 graph
下有一个使用它的示例。Nodebox 1图形库尚未兼容,但它包含自己的图形类

要使用它,您需要下载:

提取这些文件并安装,或者将
节点盒
pyglet
包放在Python路径上的某个位置(
站点包
)。运行
07 graph.py
时,您应该会看到:


这个答案有一个小问题,当问卷指定Mac OS X用户的操作系统为Windows时,它为Mac OS X用户提供了方向。是的,提到
图形
库让我大吃一惊——它只在Mac上运行。用该信息和解决方法更新了答案。