- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在尝试使用 nvd3 构建条形图,到目前为止,离散条形图具有我需要的一切。但是,我正在努力尝试像其他图表一样为其添加图例。我已经进行了类似的更改以在 discreteBarGraph.js 文件中添加图例,但很明显我遗漏了一些东西。有人对这个有经验么?谢谢。
最佳答案
离散条形图可能没有内置图例,但 NVD3 默认图例本身就是一个内置函数,您可以像调用 NVD3 图表函数一样调用它。
唯一复杂的部分是设置要在图例中显示的数据。在其他图中,图例显示系列名称;但对于离散条形图,只有一个系列。我假设您想显示与每个条相关的标签,可能作为在 x 轴上显示它们的替代方法。
要做到这一点,您必须确保与调用图例函数的选择相关联的数据数组是条形值和名称的数组,而不是最顶层的数据系列数组(在离散条形图中图表是一个长度为一的数组,其中包含单个系列对象。)然后您告诉图例函数如何使用 key(function(d){})
方法从每个柱的数据对象访问适当的标签.
这是对 NVD3 discrete bar example 的改编有了这些变化:
nv.addGraph(function() {
var chart = nv.models.discreteBarChart()
.x(function(d) { return d.label })
.y(function(d) { return d.value })
.tooltips(false)
.showValues(true)
.margin({top:50})//leave room for legend
chart.xAxis.tickFormat("") //don't show bar labels on axis
.axisLabel("Sector"); //show an axis title instead
//store svg selection in a variable so it can be re-used:
var svg = d3.select('#chart svg')
.datum(data);
//make the chart:
svg.transition().duration(500)
.call(chart);
var makeLegend = nv.models.legend()
//initialize legend function
.key(function(d) { return d.label; });
//tell the function which property to use as text
svg.append("g").attr("class", "legend")
//add a group to hold legend, position as necessary
//(no positioning will draw legend across top of SVG)
.datum(data[0].values)
//set data to the array of objects you want
//included in the legend
.transition().duration(500)
.call(makeLegend); //make it so
nv.utils.windowResize(chart.update);
nv.utils.windowResize(makeLegend); //doesn't seem to make much difference, but...
return chart;
});
如果您以任何影响图例的方式更新数据,请记住您需要更新图例和主图表。
关于javascript - 如何将图例添加到 nvd3 中的离散条形图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21272606/
[INFO] [INFO] --- dependency-check-maven:4.0.2:check (default) @ realtimePaymachine --- [INFO] Centr
我开始从 NVD XML 提要转向 JSON 提要(因为从 2019 年 10 月起不再支持 XML)。现在我很难理解这些标签及其使用目的。 例如: “配置”中的“运算符(operator)”标签有什
我的 IT 产品已定义 CPE,例如:cpe:/o:microsoft:windows_vista:6.0:sp1:~-~home_premium~-~x64~- 我正在使用 NVD 数据源来获取所有
我们正在使用 jQuery,我在国家漏洞数据库中发现了以下 jQuery 漏洞: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2007-23
我正在尝试下载 NVD CVE。这是我的Python代码: import requests import re r = requests.get('https://nvd.nist.gov/vuln/
目前我正在使用 Angular-nvd3 图形来显示数据。但是,堆叠面积图 nvd3 图形类型正在切断数字和轴标签。模板图可查看here 。 y 轴数字和标签是主要关注点。下面是图形选项代码和问题的图
我们在项目中遇到以下错误,该URL何时返回? > Task :dependencyCheckAnalyze Verifying dependencies for project cckm-app
我在gitlab管道中使用gradle:5.6.2-jdk8 docker镜像。 gradle clean build 上面的命令因错误而失败: 无法下载元文件:https://nvd.nist.go
我是一名优秀的程序员,十分优秀!