如何在甜甜圈图表中看到标签而不丢失中间文字

时间:2015-07-03 14:48:30

标签: text label chart.js

我正在尝试使用Chart.js构建一个圆环图,并在中间空白区域添加了一个文本。不幸的是,当我将鼠标拖到图表上时,文本消失了。我发现,如果我在选项部分中创建showTooltips: false,文本将成为永久文本,但这次我丢失了标签

Q1:有没有人知道如何在不丢失标签的情况下永久保留文字?

Q2: ChartNew能否正常使用Chrome?我听说最新的chrome和opera版本存在一些问题。

谢谢:)

1 个答案:

答案 0 :(得分:1)

  

Q1 :有没有人知道如何在不丢失标签的情况下永久保留文字?

在图表绘制完成后,只需将圆环图扩展为(始终)绘制中间文本。像

这样的东西
Chart.types.Doughnut.extend({
    name: "DoughnutAlt",
    draw: function(){
        Chart.types.Doughnut.prototype.draw.apply(this, arguments);

        this.chart.ctx.font = Chart.helpers.fontString(14, "normal", "'Helvetica Neue', 'Helvetica', 'Arial', sans-serif");
        this.chart.ctx.fillStyle = "Black";
        this.chart.ctx.textAlign = "center";
        this.chart.ctx.textBaseline = "middle";        
        this.chart.ctx.fillText("Hello World!", this.chart.width / 2, this.chart.height / 2);
    }
});

小提琴 - http://jsfiddle.net/upbcbyfb/

  

Q2 :ChartNew能否正常使用Chrome?我听说有   最新的chrome和opera版本存在一些问题。

粗略(仅限标题:-))浏览GitHub问题列表(https://github.com/nnnick/Chart.js/issues?utf8=%E2%9C%93&q=milestone%3Av2.0+)并未显示任何特定于Chrome或Opera的内容。

如果您想尝试某些特定内容,可以随时将代码整理到最新(可定制的)版本中(但您必须进行一些更改)

这是一个让你入门的小提琴 - http://jsfiddle.net/beehe4eg/

也就是说,当前的v2.0.0(alpha 3)是一个预发布版本(参见 https://github.com/nnnick/Chart.js/releases),因此您可能不想立即将生产代码切换到此状态。