Dimple.js-将数据标签添加到条形图的每个条形图中
Dimple.js - Add data labels to each bar of the bar chart
我使用的是基于d3.js的酒窝.js。是否可以为本例中提到的条形图的每个小节添加数据标签http://dimplejs.org/examples_viewer.html?id=bars_vertical
<div id="chartContainer">
<script src="http://d3js.org/d3.v3.min.js"></script>
<script src="http://dimplejs.org/dist/dimple.v1.min.js"></script>
<script type="text/javascript">
var svg = dimple.newSvg("#chartContainer", 590, 400);
d3.tsv("/data/example_data.tsv", function (data) {
var myChart = new dimple.chart(svg, data);
myChart.setBounds(60, 30, 510, 305)
var x = myChart.addCategoryAxis("x", "Month");
x.addOrderRule("Date");
myChart.addMeasureAxis("y", "Unit Sales");
myChart.addSeries(null, dimple.plot.bar);
myChart.draw();
});
</script>
</div>
点赞添加于http://mbostock.github.io/d3/tutorial/bar-1.html
是的,这是非常有可能的。
在Dimple.js网站的"高级条形标签"部分,他们展示了一个例子。点击此处查看。
我使用了同样的技术将条形标签添加到您发布的片段中。
注意:我保留了几乎相同的注释,这样您就可以理解代码中发生了什么。此外,出于测试目的,我更改了图表的大小
试试这个:
<div id="chartContainer">
<script src="http://d3js.org/d3.v3.min.js"></script>
<script src="http://dimplejs.org/dist/dimple.v1.min.js"></script>
<script type="text/javascript">
var svg = dimple.newSvg("#chartContainer", 1100, 600);
d3.tsv("/example_data.tsv", function(data) {
var myChart = new dimple.chart(svg, data);
myChart.setBounds(60, 30, 900, 400)
var x = myChart.addCategoryAxis("x", "Month");
x.addOrderRule("Date");
var y = myChart.addMeasureAxis("y", "Unit Sales");
var s = myChart.addSeries("Sales", dimple.plot.bar);
myChart.draw();
// After drawing we can access the shapes and their associated data
// to add labels.
s.shapes.each(function(d) {
// Get the shape as a d3 selection
var shape = d3.select(this),
// Get the height and width from the scales
height = myChart.y + myChart.height - y._scale(d.height);
width = x._scale(d.width);
// Add a text label for the value
svg.append("text")
// Position in the centre of the shape (vertical position is
// manually set due to cross-browser problems with baseline)
.attr("x", parseFloat(shape.attr("x")) + width / 2 - 15)
.attr("y", parseFloat(shape.attr("y")) - height / 2)
// Centre align
.style("text-anchor", "middle")
.style("font-size", "10px")
.style("font-family", "sans-serif")
// Make it a little transparent to tone down the black
.style("opacity", 0.7)
// Format the number
.text(d3.format(",.1f")(d.yValue / 1000) + "k");
});
});
</script>
希望这能有所帮助!
相关文章:
- 添加新数据时D3.JS条形图列偏移量
- 如何为angular js条形图添加事件
- Highcharts条形图如何添加系列事件
- 向每个堆叠条形图项目添加链接
- 如何在d3条形图中添加一组注释
- 在每个条形图的中间添加文本标签&鼠标悬停事件
- 如何在d3js垂直分组条形图中添加工具提示
- 在chartjs的条形图中添加一个点击事件
- D3 垂直条形图为标签文本添加换行符
- 为什么删除条形,然后将条形重新添加到我的堆栈条形图中会更改条形的位置
- 如何将参考线添加到 nvd3 离散条形图
- 如何在jsp中单击按钮时将代码添加到jqPlot条形图另存为图像
- 如何使用jQuery向条形图添加动画
- D3堆积条形图添加数据标签并解决D3标签放置问题
- nvd3向多条形图添加工具提示
- 无法向条形图添加网格线
- js为条形图添加标签
- 为负值的条形图添加时间轴
- 高图堆叠条形图:添加类别和数据系列
- 有没有一种方法可以为使用小控件制作的条形图添加水平滚动条