Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在highcharts中的饼图中动态居中图表标题位置_Javascript_Highcharts_Alignment_Title_Pie Chart - Fatal编程技术网

Javascript 如何在highcharts中的饼图中动态居中图表标题位置

Javascript 如何在highcharts中的饼图中动态居中图表标题位置,javascript,highcharts,alignment,title,pie-chart,Javascript,Highcharts,Alignment,Title,Pie Chart,我在做一个反应灵敏的饼图,它把标题放在中间位置。我用 title: { text: "", margin: 0, y:0, x:0, align: 'center', verticalAlign: 'middle', }, 但它在图表中并没有完全居中。任何建议都将不胜感激。提前谢谢 下面是链接:我们可以使用如下所示的chart.setT

我在做一个反应灵敏的饼图,它把标题放在中间位置。我用

title: {
            text: "",
            margin: 0,
            y:0,
            x:0,
            align: 'center',
            verticalAlign: 'middle',
        },
但它在图表中并没有完全居中。任何建议都将不胜感激。提前谢谢


下面是链接:

我们可以使用如下所示的chart.setTitle()自定义标题的任何属性。我添加了一个标题,并将useHTML属性设置为true

chart: {
            events: {
                    load: function () {
                        this.setTitle({text: 'Title',useHTML:true});
                    } 
            }
    }

更好的方法是删除标题并使用渲染器,该渲染器允许添加自定义文本,每次(重画图表时)都可以重新定位这些文本。你唯一需要的就是赶上这次活动

function addTitle() {

        if (this.title) {
            this.title.destroy();
        }

        var r = this.renderer,
            x = this.series[0].center[0] + this.plotLeft,
            y = this.series[0].center[1] + this.plotTop;
        this.title = r.text('Series 1', 0, 0)
            .css({
            color: '#4572A7',
            fontSize: '16px'
        }).hide()
            .add();

        var bbox = this.title.getBBox();
        this.title.attr({
            x: x - (bbox.width / 2),
            y: y
        }).show();
    }

chart:{
    events: {
                    load: addTitle,
                    redraw: addTitle,
            },
} 

例子:

专家解答。这对我来说真的很好。谢谢。SABASTAN。如果标题是完全基于文本的,它工作得很好。但是如果标题是图像,它不考虑图像,并且没有错误持续。在使用UsjHTML的情况下:Trand也不锻炼。有什么方法可以实现吗?也有。约束,如果标题不止一行。您可以使用“下一步”和“使用相同的选项”。因为HTML对象不能“渲染”,因为highcharts使用SVG而不是HTML。如果我将字体大小更改为60px这样的大字体,为什么它不能真正对齐?@SebastianBochan您能帮助我如何在HighchartsReact中实现
addTitle()