Amcharts:如何在sankey-diagram中将节点居中?

问题描述

我正在尝试使用Amcharts将特定节点放在sankey-diagram中。这是我的问题的一个最小示例,由于我无法为您提供实际的编码,因此我希望它很清楚。

<script src="https://cdn.amcharts.com/lib/4/core.js"></script>
<script src="https://cdn.amcharts.com/lib/4/charts.js"></script>
<script src="https://cdn.amcharts.com/lib/4/themes/animated.js"></script>

<!-- Chart code -->
<script>
am4core.ready(function() {

// Themes begin
am4core.useTheme(am4themes_animated);
// Themes end

var chart = am4core.create("chartdiv",am4charts.SankeyDiagram);
chart.hiddenState.properties.opacity = 0; // this creates initial fade-in

chart.data = [
  { from: "A",to: "D",value: 10 },{ from: "D",to: "F",value: 8 },{ from: "B",value: 4 }   
];

let hoverState = chart.links.template.states.create("hover");
hoverState.properties.fillOpacity = 0.6;

chart.datafields.fromName = "from";
chart.datafields.toName = "to";
chart.datafields.value = "value";

// for right-most label to fit
chart.paddingRight = 30;

// make nodes draggable
var nodeTemplate = chart.nodes.template;
nodeTemplate.inert = true;
nodeTemplate.readerTitle = "Drag me!";
nodeTemplate.showSystemTooltip = true;
nodeTemplate.width = 20;

// make nodes draggable
var nodeTemplate = chart.nodes.template;
nodeTemplate.readerTitle = "Click to show/hide or drag to rearrange";
nodeTemplate.showSystemTooltip = true;
nodeTemplate.cursorOverStyle = am4core.MouseCursorStyle.pointer

}); // end am4core.ready()
</script>

<!-- HTML -->
<div id="chartdiv"></div>

<!-- source: https://www.amcharts.com/demos/sankey-diagram/ -->

我希望像B这样的节点在中心而不是在左侧。当然,我已经尝试自己解决这个问题。我的尝试是使用适配器。例如,使用用于“ dx”的适配器,我可以成功移动要替换的节点,但是由于起点保持不变,因此这种方法不足。换句话说,确定这些节点不是问题,将它们居中。

所以,请您帮忙。我该如何解决

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...