标签: graph

实时Java图形/图表库?

Java图形或图表库上有一个早期的线程,其中发现JFreeChart非常好,但是,如其FAQ中所述,它不适用于实时渲染.

任何人都可以推荐一个支持实时渲染的类似库吗?只是一些基本的xy渲染 - 例如,从数据采集系统获取电压信号并在其到来时绘制它(x轴上的时间,y轴上的电压).

java charts graph real-time

29
推荐指数
6
解决办法
4万
查看次数

Graphviz中隐藏的边缘

我正在尝试使用Graphviz(符合neato)创建图形,我想将节点放在特定位置.为此,我为所有边指定了精确的边长.但是,我不希望所有边缘在最终图像中可见.

你知道隐藏边缘的方法吗?我应该提一下,我尝试将边缘着色为白色,但是发生的是我在图形节点上画了白线 - 它不是很美观......

visualization graph graphviz neato

29
推荐指数
1
解决办法
1万
查看次数

将图存储在持久存储中的最佳方法是什么?

我想知道在持久存储中存储图形的最佳方法是什么,以供以后分析,搜索,聚类等.

我看到neo4j是一个选项,我很好奇是否还有其他图形数据库可用.有没有人对大型社交网络如何存储基于图形的数据(或其他需要存储图形模型的网站,例如RDF)有任何见解.

那些像Cassandra或MySQL这样的选项呢?

database storage graph persistent neo4j

29
推荐指数
2
解决办法
1万
查看次数

GnuPlot中的线图,其中线条颜色是我的数据文件中的第三列?

我有一个如下所示的数据文件:

1 1.0 0
2 1.5 0
3 0.0 1
4 1.2 2
5 1.0 1
6 1.1 1
Run Code Online (Sandbox Code Playgroud)

第一列是我的X值,第二列是我的Y值,第三列是颜色.我想根据第三列对每个线段进行着色.所以前两个线段是"颜色1",下一个是"颜色2",下一个是"颜色3",最后两个再次是"颜色1".

我试过了:

plot 'file.dat' using 1:2:3 with lines rgb variable;
Run Code Online (Sandbox Code Playgroud)

但我的线条全黑了.

这可能在gnuplot中吗?

谢谢,加布

plot graph gnuplot

29
推荐指数
3
解决办法
4万
查看次数

绘制超过200万行平面文件数据的最快速,最灵活的方式?

我在flatfile中收集一些系统数据,其格式如下:

YYYY-MM-DD-HH24:MI:SS DD1 DD2 DD3 DD4
Run Code Online (Sandbox Code Playgroud)

其中DD1-DD4是四项数据.该文件的一个示例是:

2011-02-01-13:29:53 16 8 7 68
2011-02-01-13:29:58 13 8 6 110
2011-02-01-13:30:03 26 25 1 109
2011-02-01-13:30:08 13 12 1 31
2011-02-01-13:30:14 192 170 22 34
2011-02-01-13:30:19 16 16 0 10
2011-02-01-13:30:24 137 61 76 9
2011-02-01-13:30:29 452 167 286 42
2011-02-01-13:30:34 471 177 295 11
2011-02-01-13:30:39 502 192 309 10
Run Code Online (Sandbox Code Playgroud)

该文件超过200万行,每五秒钟有一个数据点.

我需要绘制这些数据,以便能够从中获得意义.

我试过的

目前我已尝试使用各种unix工具gnuplot和rrdtool(awk,sed等).这两种方法都有效,但每次我想以不同的方式查看数据时,似乎都需要大量的切割和重新编辑数据.我的直觉是rrdtool是正确的方法,但目前我正在努力将数据快速地加入其中,部分原因是因为我必须将我的时间戳转换为Unix时代.我的理解是,如果我决定我想要一个新的聚合粒度,我必须重建rrd(这对于实时收集是有意义的,但不是像这样的追溯加载).这些事情让我觉得我可能正在使用错误的工具.

将数据收集到平面文件是固定的 - 例如,我无法将集合直接传递到rrdtool.

我的问题

我希望人们对制图的最佳方式有所了解.我有这些要求:

  1. 它应该尽可能快地创建一个图形(不仅仅是渲染,而是设置为渲染)
  2. 它应该尽可能灵活 - 我需要使用图表来计算出数据的最佳粒度(5秒可能过于细化)
  3. 它应该能够在必要时聚合(MAX/AVG/etc)
  4. 它应该是可重复的,并且当它们进入时会有新的数据文件
  5. 理想情况下,我希望能够在本周与DD1重叠DD1与DD2或DD1
  6. Unix或Windows,不在乎.首选*nix虽然:-)

有什么建议?

r graph gnuplot flat-file rrdtool

29
推荐指数
3
解决办法
4414
查看次数

C3JS - 无法读取未定义的属性"category10"

我从jsfiddle(https://jsfiddle.net/varunoberoi/mcd6ucge)尝试了这个c3.js代码,但它似乎在我的localhost中不起作用.

我使用uniserver作为我的服务器.我复制粘贴一切,但它不起作用.

<html>
    <head>
        <!-- CSS -->
        <link href="css/c3.css" rel="stylesheet" type="text/css" />

        <!-- JAVASCRIPT -->
        <script src="js/d3.min.js" type="text/javascript"></script>
        <script src="js/c3.js" type="text/javascript"></script>

        <script type="text/javascript">
            window.onload=function(){
                var chart = c3.generate({
                    data: {
                        columns: [
                            ['data1', 300, 350, 300, 0, 0, 0],
                            ['data2', 130, 100, 140, 200, 150, 50]
                        ],
                        types: {
                            data1: 'area',
                            data2: 'area-spline'
                        }
                    },
                    axis: {
                        y: {
                            padding: {bottom: 0},
                            min: 0
                        },
                        x: {
                            padding: {left: 0},
                            min: 0,
                            show: false
                        }
                    }

                });
            } …
Run Code Online (Sandbox Code Playgroud)

javascript charts graph d3.js c3.js

29
推荐指数
2
解决办法
1万
查看次数

在无向图中查找所有无弦循环

如何在无向图中找到所有无弦循环

例如,给出图表

0 --- 1
|     | \
|     |  \
4 --- 3 - 2
Run Code Online (Sandbox Code Playgroud)

算法应该返回1-2-3和0-1-3-4,但绝不会返回0-1-2-3-4.


(注意:[1]这个问题与平面图中的小周期发现不同,因为图不一定是平面的.[2]我已经阅读了文章生成所有周期,无弦周期和哈密顿周期的原理排除,但我不明白他们在做什么:).[3]我已经尝试过CYPATH,但程序只给出了计数,readme.txt中的算法EnumChordlessPath有很大的拼写错误,而且C代码很乱.[4]我并不想找到任意一组基金会周期.循环基础可以有和弦.)

language-agnostic algorithm graph-theory graph

28
推荐指数
1
解决办法
8298
查看次数

如何增加networkx.spring_layout的节点间距

绘制一个集团图

import networkx as nx
....
nx.draw(G, layout=nx.spring_layout(G))
Run Code Online (Sandbox Code Playgroud)

产生如下图:

在此输入图像描述

显然,需要增加节点之间的间隔(例如,边缘长度).我用谷歌搜索了这个,并在这里找到了这个建议:

对于某些布局算法,存在可能有帮助的"缩放"参数.例如

1中:将networkx导入为nx

2:G = nx.path_graph(4)

在[3]中:pos = nx.spring_layout(G)#default to scale = 1

在[4]中:nx.draw(G,pos)

在[5]中:pos = nx.spring_layout(G,scale = 2)#所有节点之间的双倍距离

在[6]中:nx.draw(G,pos)

但是,该scale参数似乎没有任何影响.

获得更好绘图的正确方法是什么?

python graph graph-drawing networkx

28
推荐指数
3
解决办法
2万
查看次数

在有向无环图中找到最低共同祖先的算法?

想象一下有向无环图如下,其中:

  • "A"是根(总有一个根)
  • 每个节点都知道它的父节点
  • 节点名称是任意的 - 没有什么可以从它们推断出来
  • 我们从另一个来源得知节点是按照A到G的顺序添加到树中的(例如它们是版本控制系统中的提交)

有向无环图

我可以使用什么算法来确定两个任意节点的最低共同祖先(LCA),例如,共同的祖先:

  • B和E是B.
  • D和F是B.

注意:

algorithm graph directed-acyclic-graphs lowest-common-ancestor

28
推荐指数
3
解决办法
2万
查看次数

什么可能导致NetworkX和PyGraphViz单独工作但不能一起工作?

我正在努力学习一些Python图形可视化.我发现了一些博客文章做了一些 我想尝试的事情.不幸的是我没有走得太远,遇到这个错误:AttributeError: 'module' object has no attribute 'graphviz_layout'

在我的系统上重现错误的最简单的代码片段是这样的,

In [1]: import networkx as nx
In [2]: G=nx.complete_graph(5)
In [3]: nx.draw_graphviz(G)
------------------------------------------------------------
AttributeError Traceback (most recent call last)
&lt;ipython-input-3-481ad1c1771c&gt; in &lt;module&gt;()
----&gt; 1 nx.draw_graphviz(G)
/usr/lib/python2.7/site-packages/networkx/drawing/nx_pylab.pyc in draw_graphviz(G, prog, **kwargs)
982 See networkx.draw_networkx() for a description of optional keywords.
983 """
--&gt; 984 pos = nx.drawing.graphviz_layout(G, prog)
985 draw(G, pos, **kwargs)
986
AttributeError: 'module' object has no attribute 'graphviz_layout'
Run Code Online (Sandbox Code Playgroud)

我发现了一个类似的问题,并且这个组合有困难的帖子,但不是完全相同的错误.一个接近 …

python graph graphviz networkx pygraphviz

28
推荐指数
1
解决办法
2万
查看次数