Установите непрозрачность с помощью CSS на круговой диаграмме в Highchart - PullRequest
0 голосов
/ 27 ноября 2018

В настоящее время я сталкиваюсь с проблемой, что мне нужно установить Opacity вручную на круговой диаграмме, используя Highchart.Следующее решение прекрасно работает, если вы знаете, какой цвет вы хотите назначить срезу.Но если цвет выбирается из палитры, которая является общей, нет способа придать непрозрачность.Это всегда занимает 0. Ибо кто-нибудь может мне помочь с этим.

$(function () {
    $('#container').highcharts({
        chart: {
            plotBackgroundColor: null,
            plotBorderWidth: null,
            plotShadow: false,
        },
        title: {
            text: 'Browser market shares at a specific website, 2010'
        },
        tooltip: {
    	    pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
        },
        plotOptions: {
            pie: {
                allowPointSelect: true,
            fillOpacity: 0.5,
                cursor: 'pointer',
                dataLabels: {
                    enabled: true,
                    color: '#000000',
                    connectorColor: '#000000',
                    format: '<b>{point.name}</b>: {point.percentage:.1f} %'
                }
            }
        },
        series: [{
            type: 'pie',
            name: 'Browser share',
            data: [
                ['Firefox',   45.0],
                ['IE',       26.8],
                {
                    name: 'Chrome',
                    y: 12.8,
                    sliced: true,
                    selected: true,
                    color: 'rgba(150,100,50,0.1)'
                },
                ['Safari',    8.5],
                ['Opera',     6.2],
                ['Others',   0.7]
            ]
        }]
    });
});
    
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
<script src="http://code.highcharts.com/modules/exporting.js"></script>

<div id="container" style="min-width: 310px; height: 400px; margin: 0 auto"></div>

1 Ответ

0 голосов
/ 27 ноября 2018

Вы можете установить opacity, используя attr метод:

        events: {
            load: function() {
                var points = this.series[0].points;

                points[1].graphic.attr({
                    opacity: 0.4
                })
            }
        }

Демонстрационная версия: http://jsfiddle.net/BlackLabel/59mye8kn/

API: https://api.highcharts.com/class-reference/Highcharts.SVGElement#attr

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...