相关疑难解决方法(0)

如果有足够的空间,D3会将圆弧标签放在饼图中

我将在我的饼图(中心)的每个弧中放置一个文本元素 - 如下例所示:http: //bl.ocks.org/mbostock/3887235

但是,如果房间足够整个文本,我只会放置文本元素,所以我必须将我的文本元素的大小与每个弧中的"可用"空间进行比较.

我想我可以用getBBox()来获取文本尺寸...但是如何获得(和比较)每个弧中可用空间的尺寸.

谢谢...!

html javascript svg d3.js

8
推荐指数
1
解决办法
1万
查看次数

防止D3中的文本剪辑(Javascript图表)

我在D3中绘制一个饼图,但是文本剪辑本身有问题:

在此输入图像描述

这是我的绘图功能:

    pie: function(config)
    {
        var width = config.width || 840,
            height = config.height || 520,
            radius = Math.min(width, height) / 2;

        var color = this._color = d3.scale.ordinal().range(["#98abc5", "#8a89a6", "#7b6888", "#6b486b", "#a05d56", "#d0743c", "#ff8c00"]);
        var arc = d3.svg.arc().outerRadius(radius - 10).innerRadius(0);
        var pie = d3.layout.pie().sort(null).value(function(d) { return d.value; });

        var svg = d3.select("body").append("svg").attr('id', config.id || 'chart').attr("width", width).attr("height", height)
                    .append("g").attr("transform", "translate(" + width / 2 + "," + height / 2 + ")");

          var g = svg.selectAll(".arc").data(pie(config.data)).enter().append("g").attr("class", "arc");
          g.append("path").attr("d", arc).style("fill", function(d) { …
Run Code Online (Sandbox Code Playgroud)

javascript d3.js

2
推荐指数
1
解决办法
3722
查看次数

标签 统计

d3.js ×2

javascript ×2

html ×1

svg ×1