创建具有最大连接组件的子图

时间:2016-04-13 05:45:57

标签: python-2.7 graph networkx

我刚开始使用Networkx并遇到一个小问题。 当我尝试创建图G的连接子图时,它返回错误

  

" UnicodeDecodeError:' ascii'编解码器不能解码位置76中的字节0xc3:序数不在范围(128)"中。

我不知道这意味着什么。

try {
            $data = array(
                'userid' => '101',
                'pass' => '123456',
                'usertyp' => 2,
                'createddate' => "now()");
             $this->db->insert('login', $data);
     }
     catch (Exception $ex) 
     {
            echo $ex;
     }

非常感谢任何形式的帮助!

1 个答案:

答案 0 :(得分:1)

这在read_gml上失败,可能是因为GML文件中的unicode字符。

根据this note,GML应该ascii编码,特殊字符显示为HTML特殊字符。

您可以采取以下措施来解决此问题:

  1. 在创建图表时,decode按照this question中的说明标记了您的节点标签(另请注意相关的Python Unicode guidance)。

  2. 在节点标签中的字符与最终写入文件的字符之间创建自己的映射。这些可以表示为函数,解码函数也可以由read_gml用作destringizer

  3. 这两种解决方案都意味着您可以完全控制GML文件。如果您无法完全控制GML,则可以将其作为简单文件阅读,并查找表单标签的模式 - >" - >各种字符 - >"然后尝试替换这些标签,可能与上面提到的#2类似。

    希望这有帮助。