Ontotext GraphDB 如何在 Visual Graph 中分配颜色?

hay*_*eed 3 graphdb

我一直在尝试使用 Ontotext GraphDB 创建一些图形可视化。我希望我对相同数据制作的各种可视化效果之间的颜色保持一致。我知道颜色是根据类型而定的,但似乎并不一致。例如,如果我创建一个仅包含类型 节点的可视化图表A,分配给节点的颜色可能是红色,但是如果我创建一个包含类型A和 类型节点的可视化图表B,则分配给节点的颜色不会出现类型A保证仍然是红色的。

我想了解可视化系统根据类型分配颜色的机制。

作为旁注,我还遇到了较大网络的问题,其中图形的节点变得大于窗口的大小,因此即使我一直缩小,我也无法立即查看所有节点。

小智 5

颜色基于节点的类型,并且每次都会生成类型的颜色(我们不保留它们)。不幸的是,您无法在不接触源代码的情况下在 GraphDB Workbench 中指定 Visual Graph 节点颜色,因此您需要从 github 克隆 GraphDB Workbench 并在源代码中为您的类型设置颜色,但我将指导您如何做到这一点,它是非常简单。

从这里克隆或分叉项目https://github.com/Ontotext-AD/graphdb-workbench

(有一个很好的指南如何针对正在运行的 GraphDB 运行工作台)

打开 src/js/angular/graphexplore/controllers/graphs-visualizations.controller.js 并找到函数 $scope.getColor。

您可以在那里指定您的颜色和类型,即:

$scope.getColor = function (type) {
    if (type === 'http://myBarType') {
        return "#6495ED"
    }
    if (type === 'http://myFooType')
    {
        return "#90EE90";
    }
    if (angular.isUndefined(type2color[type])) {
        type2color[type] = colorIndex;
        colorIndex++;
    }
Run Code Online (Sandbox Code Playgroud)