Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 添加c3.js填充而不切断图形_Javascript_D3.js_C3.js - Fatal编程技术网

Javascript 添加c3.js填充而不切断图形

Javascript 添加c3.js填充而不切断图形,javascript,d3.js,c3.js,Javascript,D3.js,C3.js,这是对以下问题的回应,提供的答案解决了这个问题,但也提出了另一个问题——图表上的按钮在最后被切断-- 我如何才能做到没有填充和按钮不被切断,例如,它应该看起来像: 由于在图表层上设置了剪辑路径,这些点被剪辑掉了。你只需要移除它。你可以用D3来做这个,就像这样 d3.select(chart.element).select("." + c3.chart.internal.fn.CLASS.chart).attr("clip-path", null); 其中,chart是C3图表对象 小提琴-

这是对以下问题的回应,提供的答案解决了这个问题,但也提出了另一个问题——图表上的按钮在最后被切断--

我如何才能做到没有填充按钮不被切断,例如,它应该看起来像:


由于在图表层上设置了
剪辑路径,这些点被剪辑掉了。你只需要移除它。你可以用D3来做这个,就像这样

d3.select(chart.element).select("." + c3.chart.internal.fn.CLASS.chart).attr("clip-path", null);
其中,
chart
是C3图表对象


小提琴-



但是,您很可能希望点显示在轴层上方。为此,您需要分离并附加图表层(在SVG中,z索引由顺序决定-最后一个同级位于顶部。因此您基本上必须将其移动到同级列表的末尾),如下所示


小提琴-



填充可以非常小,如(0.1)将正确显示数据点。但是,如果您希望在没有填充的情况下继续,则会引发另一个问题。如果要在数据点顶部显示该值,则在首选视图中效果不佳。
var chartLayer = d3.select(chart.element).select("." + c3.chart.internal.fn.CLASS.chart);
var chartLayerParentNode = chartLayer.node().parentNode;
var chartLayerNode = chartLayer.remove();
chartLayerParentNode.appendChild(chartLayerNode.node());

chartLayer.attr("clip-path", null);