Chart.options возвращает «Свойство 'options' не существует для типа 'chart'" - PullRequest
0 голосов
/ 27 июня 2019

Мне нужно иметь возможность редактировать параметры моего графика после его создания. Для этого я запускаю chart.options. [...] однако при этом выдается ошибка: «Свойство» options не существует для типа «Chart». Однако не только «options» существует для типа «Chart», если я запускаю код работает нормально и может изменять параметры без проблем.

Таким образом, ошибка не мешает мне изменить параметры, пока «ng serve» уже запущено, однако, если я завершу это и попытаюсь перекомпилировать, произойдет сбой с вышеупомянутой ошибкой.

Булду код:

this.LQChart = new Chart(this.myChart, {
    type: 'bubble',
    data: {
        labels:['Jobs']
    }, options: {
        plugins:{
            colorschemes: {
                scheme: 'brewer.YlOrBr9'
            },
            zoom:{
                pan: {
                    enabled: true,
                    mode: 'xy',
                    rangeMin: {
                        x: null,
                        y: null
                    },
                    rangeMax:{
                        x: null,
                        y: null
                    }
                },
                zoom:{
                    enabled: true,
                    drag: false,
                    mode:'xy',
                    rangeMin: {
                        x: null,
                        y: null
                    },
                    rangeMax:{
                        x: null,
                        y: null
                    },
                    speed:0.1
                }
            }
        }, legend: {
            display: false
        }, title: {
            display: true,
            text: 'Location Quotient of Jobs in Region'
        }, scales: {
            yAxes: [{ 
                scaleLabel: {
                    display: true,
                    labelString: "# of Jobs"
                },
                id:'y-axis-0',
                type:'linear',
                gridLines: {
                    display:true
                },
                ticks: {
                    callback: function(value, index, values) {
                        return Number(value.toString());
                     }
                 },
                     position:'left'
             }],
             xAxes: [{
                 scaleLabel: {
                     display: true,
                     labelString: "LQ"
                 },
                 id: 'x-axis-0',
                 type: 'linear',
                 position: 'bottom',
             }]
         }, annotation: {
             annotations: [{
                 borderColor: 'black',
                 borderWidth: 2,
                 mode: 'vertical',
                 type: 'line',
                 value: 1.0,
                 scaleID: 'x-axis-0'
             }]
         }
     }
 });

Чтобы изменить параметры:

this.LQChart.options.scales.yAxes[0].type = 'logarithmic';

1 Ответ

0 голосов
/ 27 июня 2019

Получил это работает. Я не знаю точно, что послужило причиной этой ошибки, однако, рассматривая свойства как элементы массива, я смог заставить ее работать на отлично.

this.LQChart['options']['scales']['yAxes'][0]['type'] = 'logarithmic';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...