- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 vis.js 来显示网络节点。我正在解析 JSON 中的节点数据并将其存储在数组中:
$.each(jsonObj, function(i, val) {
var itemId = val.id;
var itemGroup = val.group;
var itemLabel = val.label;
var itemLevel = val.level;
var itemData = val.nodeData;
var itemX = val.x;
var itemY = val.y;
var nodeData = JSON.parse(val.nodeData);
nodes[nodeCnt] = { id: itemId, group: itemGroup, label: itemLabel, level: itemLevel, title: itemData, x: itemX, y: itemY, font: { color: colour }, color: { border: colour }};
nodeCnt++;
}
这工作完美,我可以显示我的网络:
var data = {
nodes: nodes,
edges: edges
};
var options = { ... }
network = new vis.Network( container, data, options );
我使用事件处理程序在单击节点时采取操作,我解析所单击节点的 ID(这是简写版本):
network.on("click", function (params) {
// parse node id
var nodeID = params['nodes']['0'];
}
我想更新节点的颜色,我尝试了各种变体,包括以下内容,但没有成功?
var options = {
nodes:{
id: nodeID,
borderWidth: 20,
color: {
border: '#000000',
background: '#000000',
border: '#000000',
highlight: {
border: '#2B7CE9',
background: '#D2E5FF'
}
}
}
}
network.setOptions(options);
我一直在尝试不同的方法来做到这一点。如果我从上述选项中删除 "id: nodeID,"
参数,我希望所有节点都会更新,但没有一个节点被更新。
我的节点使用标准 ID:595191aa-98c6-4a4b-a0e0-4262df83e0de
有什么想法吗?
提前谢谢您。
最佳答案
对于网络,我相信颜色的处理方式使得您可以通过网络选项指定默认颜色属性,但如果您还为该网络中的各个节点提供颜色属性,则这些特定于节点的颜色属性将始终覆盖任何默认值你设置。
这就是为什么这对您不起作用 - 在点击事件上您尝试更改网络默认颜色属性,但由于您的节点具有自己的颜色取代属性,因此这些更改将始终被忽略。
看看http://jsfiddle.net/9knw26nc/1/
var nodeID = params['nodes']['0'];
if (nodeID) {
var clickedNode = nodes.get(nodeID);
clickedNode.color = {
border: '#000000',
background: '#000000',
highlight: {
border: '#2B7CE9',
background: '#D2E5FF'
}
}
nodes.update(clickedNode);
}
只是简化了您的示例,但我通过更新数据集来反射(reflect)所单击的节点,直接更改节点颜色属性。
关于javascript - vis.js setOptions 更改网络节点上的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38768598/
我有一个 vis.js 网络图,其中包含节点之间的多条边,我也尝试使用分层布局对其进行设置。如果我做一个没有分层布局选项的普通图形,那么节点之间会显示多条线,但是,一旦我打开/放置分层布局选项,只绘制
是否可以在组中设置与节点中相同的颜色选项?只有在 icon.color 中将颜色作为字符串传递才有效。但我还想设置悬停 和突出显示 颜色。 我试过以下方法: var options={ group
考虑以下函数: int bar(const int* __restrict x, void g()) { int result = *x; g(); result += *x;
我正在尝试将 vis.js 功能集成到 Oracle Application Express 中,但似乎根本无法使其工作。 如果我单独运行脚本,它会正常工作,但是当我尝试在 APEX 中加载脚本 (v
我是一名 C# 开发人员,受托为我们的一个项目开发 Android native 应用程序,该项目的 C# 逻辑引擎作为 REST 服务公开。当前项目有一个使用 Html5 和 JS 的 Web 版本
我添加了 xType="time"到图表以在 x 轴上显示时间刻度。我只显示 25 秒范围内的数据。目前,x 轴显示的时间格式为 :SS . 所以 x 轴以下列格式显示时间(数据显示每秒): :23,
当 vis.js 在网络节点上时,有没有办法改变鼠标光标?我希望将它们视为节点所代表对象的链接,并被要求将光标更改为“手指”图标以指示可以单击它。 最佳答案 对我来说,它的工作有 3 个步骤 1.如果
我正在使用 vis.js 的二维折线图 ( http://visjs.org/graph2d_examples.html )。有没有办法向数据点添加工具提示,以便当您将鼠标悬停或单击时,您可以在弹出窗
我正在按照 vis 的动态数据集示例进行操作,但在尝试设置边时遇到 typescript 错误。 我只有一个边缘数组,看起来像: edgesArray = [ { from: 1, to: 3 },
我试图在同一页面上使用网络和时间线包(就像我在使用旧的 4.21 版本时所做的那样,它在那里工作),但我无法让它工作。当我向网络提供可见数据集时,它会抛出错误(需要数据集或数组)。如果我删除标题中时间
js 和 angular 在我的网页上显示一些图表。我安装了 npm install vis npm install @type/vis 但我发现两者都有一个名为 DataView 的函数。 我想使用
我使用 vis.js 创建了一个时间线图表。我有很多 vis-box 项目。因为我可以在时间轴上显示非常有限的信息。因此,当用户移动到项目上时,我想显示该项目的详细信息。 我在这个 url http:
如何使用特定日期数组和每个日期的特定标签制作我自己的 x 轴? 像这样的…… 这些是每三周一次,但我的需要是标记每个蓝色组(彩色是事件),每个组都有开始和结束日期 最佳答案 您可以使用格式函数自定义
我有一个由 vis.js 创建的大型网络图,它在浏览器中的宽度为 100% 并且非常高,因此需要向下滚动页面才能看到所有内容 - 我希望我的页面能够像世界上大多数其他网页一样运行 - 但是vis.js
我正在使用 vis.js 来显示节点,并非所有节点都相互连接,但它们如图所示重叠,有没有办法避免这种情况,我浏览了配置选项,但无法寻找。 最佳答案 我建议对物理和布局使用手动配置: configure
是否可以使用visjs在时间轴上绘制折线图? 我想在这里得到类似的东西 http://almende.github.io/chap-links-library/js/timeline/examples
我正在使用 Visjs 并用文本显示矩形节点。有些节点可以有几行文本,因此我添加了一种启发式算法来大致计算出换行符应该在哪里,以避免在非常宽但非常短的节点中出现非常宽的单行文本 block 。 问题是
vis.js 库是 1.6mb,缩小后的文件是 610k,这仍然太大了。将库文件下载到用户机器上需要相当长的时间,尤其是在网络连接速度较慢的情况下。 目前我只使用这个库来构建时间线图,我想知道是否有办
我使用 vis.js 在层次网络图中发现了这种奇怪的布局。如您所见,边缘被弄乱了。任何建议都会很好。谢谢。还是可以通过父节点位置改变排序函数? 图1:当前网络 图2:预期网络 最佳答案 根据 this
我对这个库有问题 vis.js 数据是正确的(图表内部也是正确的),但在视觉上它们没有被正确表示。 例子: 红色节点与蓝色节点有连接。绿色节点与黑色节点有连接 问题:红色节点在绿色节点内部传递到蓝色节
我是一名优秀的程序员,十分优秀!