Highcharts меняют или добавляют цвет для имени в массиве point.names и y - PullRequest
0 голосов
/ 18 апреля 2019

Мне нужно установить цвет для массива point.name и y по отдельности.

Что у меня есть:

(function(H) {
  H.wrap(H.Series.prototype, 'getColor', function(proceed) {
    this.color = generateColorForString(this.name);
  });
}(Highcharts));

Это работает для следующей структуры данных:

{
  "data": [
    [
      [
        "2018",
        "02",
        "16",
        "00",
        "00"
      ],
      4.9
    ],
    ...
 ],
  "name": "MySeriesName"
}

, но не для этой структуры данных для круговой диаграммы:

{
  "type": "pie",
  "name": "MySeriesName",
  "data": [
    [
      "foo",
      27
    ],
    [
      "foox",
      112
    ],
    [
      "fooy",
      4
    ]
    ...
  ]
}

Можно ли установить цвет для каждой точки по имени?

Здесьмоя скрипка: http://jsfiddle.net/2nd8561k/2/

1 Ответ

1 голос
/ 18 апреля 2019

Вам нужно обернуть resolveColor метод из Highcharts.Point.prototype:

(function(H) {
    H.wrap(H.Point.prototype, 'resolveColor', function(proceed) {
        this.color = generateColorForString(this.name);
    });
}(Highcharts));

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

Документы: https://www.highcharts.com/docs/extending-highcharts

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