我已经交了一个项目,包括几十个(可能超过100个,我没有计算)bash脚本.大多数脚本至少调用另一个脚本.我想得到一个调用图的等价物,其中节点是脚本而不是函数.
有没有现成的软件可以做到这一点?
如果没有,是否有人对如何做到这一点有聪明的想法?
我能想出的最佳计划是枚举脚本并检查基本名称是否唯一(它们跨越多个目录).如果有重复的基本名称,则哭,因为脚本路径通常以变量名称保存,因此您可能无法消除歧义.如果它们是唯一的,那么grep脚本中的名称并使用这些结果来构建图形.使用一些工具(建议?)来可视化图形.
建议?
在处理几千个节点和几千个关系时,我应该使用哪个图形数据库?这些大数据是否适用于任何数据库?哪个图形数据库在读取操作中最快(假设所有数据在开始时加载一次).我看了看neo4j及其可视化工具.我可以在我的应用程序中使用这样的可视化工具吗?
我不知道您是否看过这个视频:http://www.youtube.com/watch?v = Q9wcvFkWpsM.
我想知道演示者使用什么样的工具来创建那些强大的3D视觉效果?有人可以建议吗?我正在开发一个大数据项目,我真的想要构建一些奇特而富有创意的数据可视化.
谢谢

我已经能够使用Force Layout构建一个Force Directed Graph.大多数功能都很好用,但我遇到的一个重要问题是,在开始布局时,它会在整个页面(进出画布边界)之间反弹,然后再定位到画布上的位置.
我已经尝试使用alpha来控制它,但它似乎不起作用:
// Create a force layout and bind Nodes and Links
var force = d3.layout.force()
.charge(-1000)
.nodes(nodeSet)
.links(linkSet)
.size([width/8, height/10])
.linkDistance( function(d) { if (width < height) { return width*1/3; } else { return height*1/3 } } ) // Controls edge length
.on("tick", tick)
.alpha(-5) // <---------------- HERE
.start();
Run Code Online (Sandbox Code Playgroud)
有谁知道如何正确控制Force Layout进入其SVG画布?
我不介意图表漂浮并缓慢安定,但整个图表的疯狂弹跳根本没有吸引力.
BTW,Force Directed Graph示例可在以下位置找到:http://bl.ocks.org/Guerino1/2879486 在此处输入链接描述
谢谢你尽你所能的帮助!
我想截断d3中超过预定义限制的文本.
我不知道怎么做.
这就是我现在拥有的:
node.append("text")
.attr("dx", 20)
.attr("dy", ".20em")
.text(function(d) { if(d.rating > 25) return d.name; }));
Run Code Online (Sandbox Code Playgroud)
仅当等级> 25时才显示文本.如何截断这些名称的文本?
我想使用 graphviz 绘制决策树图。
我想要绘制的图表如下所示:

我正在使用以下点语言:
graph a {
A [shape=box; label="A"]
B [shape=box; label="B"]
al [shape=none; label="0"]
bl [shape=none; label="1"]
br [shape=none; label="0"]
A -- al [label="0"];
A -- B [label="1"];
B -- bl [label="0"];
B -- br [label="1"];
}
Run Code Online (Sandbox Code Playgroud)
然而我的结果图如下所示:

如何强制 graphviz 生成的节点从左到右的顺序?此外,就决策树而言,即使从左到右的顺序不同,这两棵树是否完全相同?
有人知道可视化在Cosmos DB Graph中创建的图形的工具吗?
我正在寻找类似Gephi(https://gephi.org/)或OrientDB或Neo4j使用的工具。
我正在寻找可以“连接”到数据库的东西。Gephi似乎需要导出,然后使用导出的文件。OrientDB和Neo4j的工具将连接到服务器实例并提供查询的图形结果。
顺便说一句,我目前正在使用Azure Cosmos DB模拟器。因此,我需要可以在本地开发网站(本地主机)上运行的工具。
我正在使用Python中的Networkx模块研究pagerank算法。我有一个列表字典,其中字典的关键字是页面的标题,其值是通过该页面引用的所有标题。
因此,为了创建可视化,我首先这样做:
G = nx.DiGraph()
G = nx.from_dict_of_lists(ref_dict)
Run Code Online (Sandbox Code Playgroud)
ref_dict上面提到的字典在哪里。
创建图后,我正在使用Networkx的write_edgelist功能以csv格式存储图。
nx.write_edgelist(subG,'PageRanks2.csv')
Run Code Online (Sandbox Code Playgroud)
这就是我的问题。csv文件将边存储为:
节点1节点2 {}节点1节点3 {}
当我直接在Gephi中使用此文件时,它将{}视为节点,并相应地显示可视化。那么,存储networkx图以使其可视化的最佳格式应该是什么?
我已阅读文档,并且确实添加了具有属性的边weight,但边的权重未显示在绘图上,并且当我将诅咒悬停在两个节点之间的链接上时,边的权重也不会显示。可以显示体重吗?
代码片段(来源:https://pyvis.readthedocs.io/en/latest/tutorial.html#networkx-integration):
from pyvis.network import Network
import networkx as nx
nx_graph = nx.cycle_graph(10)
nx_graph.nodes[1]['title'] = 'Number 1'
nx_graph.nodes[1]['group'] = 1
nx_graph.nodes[3]['title'] = 'I belong to a different group!'
nx_graph.nodes[3]['group'] = 10
nx_graph.add_node(20, size=20, title='couple', group=2)
nx_graph.add_node(21, size=15, title='couple', group=2)
nx_graph.add_edge(20, 21, weight=5)
nx_graph.add_node(25, size=25, label='lonely', title='lonely node', group=3)
nt = Network('500px', '500px')
# populates the nodes and edges data structures
nt.from_nx(nx_graph)
nt.show('nx.html')
Run Code Online (Sandbox Code Playgroud)
结果: 片段的结果
如何显示边的权重?在此示例中,节点 20 和 21 的边有权重。
我在 R 中模拟了一些图网络数据(~10,000 个观察值),并尝试使用 R 中的 visNetwork 库将其可视化。 然而,数据非常混乱,很难进行可视化分析(我明白在现实生活中,网络数据是旨在使用图查询语言进行分析)。
就目前而言,我可以做些什么来改进我创建的图网络的可视化(这样我就可以探索一些相互叠加的链接和节点)?
可以使用诸如“networkD3”和“diagrammeR”之类的库来更好地可视化该网络吗?
我在下面附上了我的可重现代码:
library(igraph)
library(dplyr)
library(visNetwork)
#create file from which to sample from
x5 <- sample(1:10000, 10000, replace=T)
#convert to data frame
x5 = as.data.frame(x5)
#create first file (take a random sample from the created file)
a = sample_n(x5, 9000)
#create second file (take a random sample from the created file)
b = sample_n(x5, 9000)
#combine
c = cbind(a,b)
#create dataframe
c = data.frame(c)
#rename column names
colnames(c) <- c("a","b")
graph …Run Code Online (Sandbox Code Playgroud)