gpt4 book ai didi

d3.js - NVD3 工具提示仅显示类别

转载 作者:行者123 更新时间:2023-12-04 04:39:54 25 4
gpt4 key购买 nike

我正在使用堆积条形图。如何让工具提示只显示数据的类别,而不是确切的值,或者作为替代,是否可以显示类别而不是条形末端的值(就像设置 .showValue(true) 一样,但是使用类别)。

更新

我找到了一个只在工具提示中显示类别(键)的解决方案,但它涉及对源代码的修改,看起来不太好。
我认为我想要做的正确名称是显示每个条的标签。我无法使用此代码使其正常工作:

chart.xAxis.
.axisLabel(attrs.xAxisLabel)
.tickFormat(d3.format('r'));

因为它给了我一个错误 attrs没有定义。我有想法 from here .但我不能让它工作。

更新

更具体一点:

My chart

我想在垂直轴上显示 round_1_2 ,不仅仅是当我悬停时。

最佳答案

更新:工作 fiddle :http://jsfiddle.net/reblace/D2Dak/4/

NVD3 代码生成错误仍然存​​在一些问题......他们在他们的站点示例中也有问题......但是,现在我在这里提到的东西是可以证明的。

要在不修改其代码的情况下自定义工具提示,请在您的代码中尝试以下操作:

chart.tooltip(function(key, x, y, e, graph) {
return '<h3>' + key + '</h3>' +
'<p>' + y + ' on ' + x + '</p>';
});

它们通过 multibarchart 函数上的函数公开工具提示,因此您可以修改用于呈现工具提示的 HTML 模板。

还有
chart.reduceXTicks(false);      // Will show labels on all bars
chart.rotateLabels(angle); // Rotate the labels to "angle" degrees
chart.xAxis.staggerLabels(true) // Staggers the X Axis labels vertically so they don't run into eachother

如果您查看他们的源代码,您可以找到公开所有内容以供修改的部分:
//============================================================
// Expose Public Variables
//------------------------------------------------------------

// expose chart's sub-components
chart.dispatch = dispatch;
chart.multibar = multibar;
chart.legend = legend;
chart.xAxis = xAxis;
chart.yAxis = yAxis;
...
chart.reduceXTicks= function(_) {
if (!arguments.length) return reduceXTicks;
reduceXTicks = _;
return chart;
};

chart.rotateLabels = function(_) {
if (!arguments.length) return rotateLabels;
rotateLabels = _;
return chart;
}

chart.tooltip = function(_) {
if (!arguments.length) return tooltip;
tooltip = _;
return chart;
};

Mike Bostock 在 NVD3 遵循的“面向可重用图表”中描述了一种设计模式,因此熟悉它可能会有所帮助。 http://bost.ocks.org/mike/chart/

关于d3.js - NVD3 工具提示仅显示类别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19057831/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com