有没有办法在Google的Sankey图中使用样式角色更改目标节点文本的颜色?目前我的数据设置如下:
[Source, Target, Label, Style]
[A,B,"Test Label", "#ffffff"]
我可以改变节点和链接的颜色,但不能改变文本的颜色。
在这一点上,d3对我来说不是一个选择,整个想法是将节点动画化,使其在其位置一个接一个地出现 - 因此尝试更改样式并重新绘制图表。增大表不起作用,因为节点会更改位置。有什么想法吗?
无法找到使用标准选项设置单个节点文本样式的方法
但是在绘制图表后,颜色可以手动设置
通常,图表的“ready”
事件可用于了解图表何时完成绘制,
但是,图表将在每个交互式事件上恢复为默认的Node文本样式,
例如“onmouseover
”,“onmouseout”
,
相反,使用突变观察者来更改任何交互性的节点文本
请参阅以下工作片段,它将颜色映射到每个Node文本…
google.charts.load('current', {'packages':['sankey']});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data = new google.visualization.DataTable();
data.addColumn('string', 'From');
data.addColumn('string', 'To');
data.addColumn('number', 'Weight');
data.addRows([
['A', 'X', 5],
['A', 'Y', 7],
['A', 'Z', 6],
['B', 'X', 2],
['B', 'Y', 9],
['B', 'Z', 4]
]);
var options = {
width: 600
};
var colorMap = {
'A': 'cyan',
'X': 'magenta',
'Y': 'yellow',
'Z': 'lime',
'B': 'violet'
};
var chartDiv = document.getElementById('sankey_basic');
var chart = new google.visualization.Sankey(chartDiv);
var observer = new MutationObserver(function (mutations) {
mutations.forEach(function (mutation) {
mutation.addedNodes.forEach(function (node) {
if (node.tagName === 'text') {
node.setAttribute('font-size', '20');
node.setAttribute('fill', colorMap[node.innerHTML]);
}
});
});
});
observer.observe(chartDiv, {
childList: true,
subtree: true
});
chart.draw(data, options);
}
<script src="https://www.gstatic.com/charts/loader.js"></script>
<div id="sankey_basic"></div>
以下是基本SanKey图表的示例。 我们已经在Google Charts Configuration Syntax一章中看到了用于绘制图表的配置 。 现在,让我们看一个基本SanKey图表的示例。 配置 (Configurations) 我们使用Sankey类来显示Sankey图表。 Sankey chart = new Sankey(); 例子 (Example) HelloWorld.jav
创建了一个阴阳烛图表,四分位数用于合唱青蛙活动。试图找出如何将实际数据点添加到图表中(使其成为组合图表)。 以下是烛台图的代码: 我想在每个相关的烛台图上添加基础数据(带红点的散点图)。以便用户能够更好地可视化数据的传播,并最终识别异常值。 下面是前三个烛台图的基础数据。[69, 78, 87, 91, 102, 109, 111, 112, 117, 118, 120, 126, 129, 13
以下是具有多个级别的SanKey图表的示例。 我们已经在Google Charts Configuration Syntax一章中看到了用于绘制图表的配置 。 现在,让我们看一个具有多个级别的SanKey图表的示例。 配置 (Configurations) 我们使用Sankey类来显示具有多个级别的Sankey图表。 Sankey chart = new Sankey(); 例子 (Exampl
以下是自定义SanKey图表的示例。 我们已经在Google Charts Configuration Syntax一章中看到了用于绘制图表的配置 。 现在,让我们看一个自定义SanKey图表的示例。 配置 (Configurations) 我们使用Sankey类来显示Sankey图表。 Sankey chart = new Sankey(); 例子 (Example) HelloWorld.j
我正在使用geojson数据处理Google地图中的图层。 我现在有一个有四个不同多边形的图层,当你点击它们时,它们会从灰色变成绿色。但是当我再次点击时,它不会变回灰色,这就是点击功能的目的。 在我的情况下,它适用于我的编辑器,https://embed.plnkr.co/hi4MtjO8f0PN6rCW70rE/。这是完整的代码段。 我修好了!!我更改了几行的位置,并将其设置为false或tru
我正在使用从http://script.google.com.访问的Google Apps Script编辑器创建脚本,我想使用https://developers.google.com/chart/interactive/docs/quick_start.中记录的较新的图表服务。 [html [script type=“text/javascript”src=”https://www.googl