我正在使用NVD3 multiChart模型制作图表,我有4个系列,3个与左侧yAxis关联的栏和1个与右侧yAxis关联的栏。
3个柱子只有一个浮动值,其中该线具有一个perchentage。 一切正常,但工具提示中有一些东西,它没有正确格式化的日期(根本没有格式化)。
你知道我怎么能在底部格式化我的格式吗?
1458428400 -> 20-03-16
由于
答案 0 :(得分:1)
您可以执行以下操作:
定义一个将epoch转换为漂亮日期的函数。像这样:
function epochToNiceDate(epoch) {
var date = new Date(0);
date.setUTCSeconds(epoch);
var day = date.getDate();
var month = date.getMonth() + 1;
var year = date.getFullYear();
return day + "-" + month + "-" + year;
}
将工具提示的内容生成器功能传递给您的图表(假设您已启用 useInteractiveGuideline )。您可以浏览NVD3的源代码并复制/粘贴默认内容生成器,然后根据需要进行修改。我们以下面的例子为例:
chart.interactiveLayer.tooltip.contentGenerator(function (d) {
var tooltipTitle = epochToNiceDate(d.value);
var tooltip = "";
tooltip += "<table>";
tooltip += "<thead>";
tooltip += "<tr><td colspan='3'><strong class='x-value'>" + tooltipTitle + "</strong></td></tr>";
tooltip += "</thead>";
tooltip += "<tbody>"
for(var i in d.series) {
var currentSeries = d.series[i];
var color = currentSeries.color;
var key = currentSeries.key;
var value = currentSeries.value;
tooltip += "<tr>";
tooltip += " <td class='legend-color-guide'>";
tooltip += " <div style='background-color: " + color + ";'></div>";
tooltip += " </td>";
tooltip += " <td class='key'>" + key + "</td>";
tooltip += " <td class='value'>" + value + "</td>";
tooltip += "</tr>";
}
tooltip += "</tbody>";
tooltip += "</table>";
return tooltip;
});
您可以在此处看到它:https://jsfiddle.net/Luc93/qf4u5439/
祝你好运!答案 1 :(得分:1)
事实证明这是一个错误,如果其他人需要你可以使用的补丁,我已经完成了拉取请求: