Arhn - архитектура программирования

Устранение конфликта highmaps-highcharts при создании карт, столбцов и радарных диаграмм.

Я могу создавать столбцы highcharts и радарные диаграммы в своем приложении Ruby on Rails, требуя в application.js:

//= require jquery3
//= require highcharts
//= require highcharts/highcharts-more

Затем мне нужно добавить карту highcharts. Однако вызов функции генерации карты Highcharts.mapChart('container', {... вызывает:

Uncaught TypeError: Highcharts.mapChart is not a function

Кажется, я устраняю ошибку, заменяя //= require highcharts на //= require highmaps и добавляя //= require highcharts/modules/map. Теперь у меня есть и столбчатая диаграмма, и карта. Но удаление //= require highcharts приводит к ошибкам при вызове лепестковой диаграммы: Uncaught ReferenceError: Highcharts is not defined. Я не могу требовать одновременно highcharts и highmaps из-за возникающего конфликта:

Uncaught Error: Highcharts error #16: Highcharts already defined in the page
This error happens if the Highcharts namespace already exists when loading Highcharts or Highstock.

Попытка разместить //= require highmaps перед //= require highcharts/highcharts-more исправляет ошибку, но вызывает две новые ошибки: Uncaught TypeError: Cannot read property 'prototype' of undefined и Uncaught TypeError: Cannot read property 'updateCenter' of undefined. Как я могу объединить колонку, радар и карту в одном приложении?

26.05.2019

Ответы:


1

Вы не должны использовать модули Highmaps и map вместе. Вы можете использовать модуль map в качестве плагина с Highcharts:

<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/highcharts-more.js"></script>
<script src="https://code.highcharts.com/maps/modules/map.js"></script>

Текущая демонстрация http://jsfiddle.net/BlackLabel/gbduyLo9/

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

27.05.2019
  • Карта не создается, когда я использую require highcharts, для которого требуется код, который был автоматически установлен через gem 'highcharts-rails'. Но это работает, когда я заменяю код в файле highcharts.js кодом из https://code.highcharts.com/highcharts.js. Ваша скрипка отвечает на вопрос, но не на ваш js-манифест выше 27.05.2019
  • Может ли быть проблема с файлом, созданным при установке через gem 'highcharts-rails'? 27.05.2019
  • Привет @amo, Да, похоже, проблема вызвана highcharts-rails. Я думаю, что вам следует открыть вопрос в репозитории github. 28.05.2019
  • Новые материалы

    Коллекции публикаций по глубокому обучению
    Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

    Представляем: Pepita
    Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

    Советы по коду Laravel #2
    1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

    Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
    Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

    3 способа решить квадратное уравнение (3-й мой любимый) -
    1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

    Создание VR-миров с A-Frame
    Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

    Демистификация рекурсии
    КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..