Как собрать данные sh в Highchart Networkgraph? - PullRequest
0 голосов
/ 27 февраля 2020

Hello.

Когда я использую функцию chartData для передачи данных sh на сетевой график Highchart, он не работает. Как я могу получить данные pu sh на график из Firebase. Данные Firebase находятся в нужном формате, поэтому они работают для извлечения данных. Проблема состоит в том, чтобы отобразить его на графике. Когда я тестирую график со значениями данных, которые теперь закомментированы, график работает нормально. Хотите получить данные из пожарного магазина. Для p ie графа этот способ работает с pu sh данными в графе, поэтому я подумал, что он будет работать и для графа сети. Кто-нибудь может мне помочь?

import * as HighCharts from 'highcharts';
import networkgraph from 'highcharts/modules/networkgraph';
import more from 'highcharts/highcharts-more';
import solidgauge from 'highcharts/modules/solid-gauge';
import { Injectable } from '@angular/core';
import { Component, OnInit, OnDestroy } from '@angular/core';
import { Observable } from 'rxjs';
import { Subject } from 'rxjs/Subject';
import { uniqBy, groupBy, sum, map, zip } from "lodash";
import { AngularFirestore } from "@angular/fire/firestore";
import { IdeaService } from 'src/app/services/firestore/getidea.service'; 
import { Idea } from 'src/app/models/idea.model';
import { Chart } from 'highcharts';
more(HighCharts);
solidgauge(HighCharts);
networkgraph(HighCharts);

Функция для pu sh данных от базы данных до сетевого графика, это не работает!

// Highchart - networkgraph - push data
private chartData(ideas: Idea[]) {
  const data = [];
  const grouped = groupBy(ideas, x => x.feeling);
  Object.keys(grouped).forEach(key => {
    const from = 'Valg'
    var value = grouped[key];
    console.log({ from: `${from}`, to: `${key}`})   
    data.push([`${from}`, `${key}`]);  
  });
    return data;
}

Я попробовал другой формат в data.pu sh, но безуспешно.

Вывод из console.log в функции chartData '["Valg", "ikke bra nok"]' '["Valg", "sint"]' '["Valg", "hat"]'

И график под. Когда я использую ручные данные, которые сейчас комментируются, график отображается нормально.

// Lotus flower
plotLotusChart(ideas: Idea[]) {
  let myChart = HighCharts.chart('lotus', {
      chart: {
        type: 'networkgraph',
        events: {
          load: function() {
            this.series[0].addPoint(['Valg'] );
          }
        },
        backgroundColor: 'rgba(0,0,0,0)',
        marginTop: 80
      },
      title: null,

      subtitle: {
            text: '<span style="color: white">Lotus blomsten</span>'
      },
      plotOptions: {
        networkgraph: {
          keys: ['from', 'to'],
          layoutAlgorithm: { // added
            enableSimulation: true
          }
        }
      }, 
      series: [
        {
          marker: {radius: 30,
                  },
          dataLabels: {
                  enabled: true,
                  linkFormat: '',
                  allowOverlap: true 
                      },
        data: [this.chartData(ideas)],
             //     ['Valg', 'Følelser'],
             //     ['Valg', 'Behov'],
             //     ['Valg', 'Strategier'],
             //     ['Valg', 'Forventninger'],
             //     ['Valg', 'Harmoniøvelsen']
             // ],
          type: undefined,
        }]
  });
}

ОШИБКА TypeError: Невозможно прочитать идентификатор свойства неопределенного в старших чартах - больше. js: 111 в Array.forEach () на (высокие карты-больше. js: 111) в старших чартах - больше. js: 111 в Array.forEach () at reingold-fruchterman.setCircularPositions (highcharts-more. js: 111) в reingold-fruchterman.initPositions (highcharts-more. js: 111) в reingold-fruchterman.start (старшие чарты-больше. js: 106) в старших чартах - больше. js: 117 в Array.forEach ()

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