我正在使用pydot
生成SVG图形图像。我在这个网站上注意到:http://safemap.sourceforge.net/demo/index-no-refresh.html他们有一个可点击的SVG。 (该网站还展示了如何使用CSS为SVG设置样式:https://css-tricks.com/using-svg/)
我一直在搜索有关使用pydot
生成可点击SVG的文档,但找不到任何内容。
答案 0 :(得分:1)
Pydot是Graphviz的包装器。检查您是否可以先在Graphviz中执行此操作是合理的。
原来你可以:
现在,你能用pydot做吗?我相信,但没有经过考验。通过查看pydot的来源,我发现它支持任何属性 - in the tests我们看到用户传递shape
:
self.graph_directed.add_node( pydot.Node('node', shape='box') )
在the pydot itself我们看到它可以支持任何类型的属性,而不仅仅是shape
:
class Node(object, Common):
(...)
def __init__(self, name = '', obj_dict = None, **attrs):
(...)
self.obj_dict[ 'attributes' ] = dict( attrs )
所以我尝试使用pydot.Node('node', url='http://somewhere')
。如果失败,我会手动构建一个.dot
文件并将其传递给pydot。
如果您计划在<img/>
内使用SVG,则由于您的网络浏览器的安全政策,您的链接可能无法正常运行。在这种情况下,您需要将其直接嵌入HTML中,就像您链接的网站一样。如果图像托管在与主页不同的域上,则这一点尤其重要。
答案 1 :(得分:1)