2013-02-21 57 views
1

我想创建一个使用nodebox(ubuntu 12.04,python 2.7,django 1.3)在我的数据库中的用户之间的连接图,但当我输入下面的说明,我得到错误信息在它之下:Pydev Nodebox:“AttributeError:'NoneType'对象没有任何属性'WIDTH'”

"""  
g.draw(weighted=False, directed=False, highlight=[], traffic=None) 
Traceback (most recent call last): 
    File "/usr/local/lib/python2.7/dist-packages/IPython/core/interactiveshell.py", line 2721, in run_code 
    exec code_obj in self.user_global_ns, self.user_ns 
    File "<ipython-input-1-0a219395b690>", line 1, in <module> 
    g.draw(weighted=False, directed=False, highlight=[], traffic=None) 
    File "/home/raymond/Documents/exchange/cet/cet/graph/__init__.py", line 453, in draw 
    self.update() 
    File "/path/to/myproject//graph/__init__.py", line 416, in update 
    self.x = _ctx.WIDTH - max.x*self.d - min_.x*self.d 
AttributeError: 'NoneType' object has no attribute 'WIDTH' 

""" 

我怎样才能得到nodebox绘制图表?我应该添加一个try/catch或if语句到图/ init .py为了防止类型为none的对象被写入?我知道展示更多代码可以更快地解决问题。我遇到了格式问题,但我会尽快为问题添加代码。

回答

2

Nodebox有一个图形网页,简洁,内容丰富,看起来我需要。由于要下载的文件在同一页面上看起来很理想,但它没有提及它是针对Mac的Nodebox 1而已!

然后进一步的翻找发现NodeBox OpenGL有一个新的方法并且是跨平台的,但是它只列出了与python 2.5-2.6的兼容性(所以2.7应该值得一试?)但是安装graphics util Pyglet失败了第一次....所以需要更多的调查。

可悲的是Nodebox 3似乎都不同,但尚未看到类似图命令

回首结果

实现的安装后,我的原型网络浏览器,用鼠标选择属性查看器,低帧率和恒定的数据集。在互动性的味道是体现在这个网站

http://www.visualthesaurus.com/app/view?word=link (尝试在中心词的点击和拖动)

但问题我需要解决的是对

  • 如何显示实时数据设置一致,即处理孤儿, 作为您可能正在查看的分支转换可能会从 数据中消失
  • 分割查看大量数据,即查看2到20个节点拉尔百余项
  • 没有重叠/遮挡或去到显示区
  • 显示差异时不能在当前水平
  • 便携
  • 显示数据...

在我的情况下周期性更新,结构化的HTML表和颜色和缩放级别是最好的解决方案

+0

我试过NodeBox OpenGL,但它也不工作。一些基本命令如“创建图形”或“添加节点”提示错误消息。现在,我使用networkx生成JSON文件并尝试使用d3js对它们进行动画处理。 – 2013-03-04 19:44:48