Highcharts美国气泡Map:悬停在气泡上时的工具提示问题

uinbv5nw  于 12个月前  发布在  Highcharts
关注(0)|答案(2)|浏览(193)

我在一个React应用程序中使用Highcharts来创建一个US Bubble Map。相关库的版本详细信息如下:
“@highcharts/map-collection”:“^2.1.0”“highcharts”:“^11.1.0”“highcharts-react-official”:“^3.2.0”“proj4”:“^2.9.0”
我遇到的问题是,当我将鼠标悬停在Map上的一个气泡上时,工具提示显示的是另一个气泡的信息。然而,气泡上的单击事件正确地记录了该区域的名称。
下面是我的组件的链接:BubbleChart.js on StackBlitz
相关代码:

import React, { useEffect, useState } from 'react';
import Highcharts from 'highcharts';
import HighchartsReact from 'highcharts-react-official';
import hcMap from 'highcharts/modules/map';
import proj4 from 'proj4';
import mapDataUSA from '@highcharts/map-collection/countries/us/us-all.geo.json';
hcMap(Highcharts);

if (typeof window !== 'undefined') {
  window.proj4 = window.proj4 || proj4;
}

function BubbleChart(props) {
  const chartOptions = {
    chart: {
      backgroundColor: 'transparent',
      type: 'map',
      map: 'countries/us/us-all',
    },
    title: {
      text: null,
    },
    credits: {
      enabled: false,
    },
    mapNavigation: {
      enabled: false,
      enableButtons: false,
    },
    navigation: {
      buttonOptions: {
        enabled: false,
      },
    },
    credits: {
      enabled: false,
    },
    tooltip: {
      //   headerFormat: "",
      //   pointFormat: "lat: {point.lat}, lon: {point.lon}",
      formatter: function () {
        return (
          '<b>' +
          this.point.options.keyword +
          '</b><br/>' +
          this.point.options.z
        );
      },
    },
    legend: {
      enabled: false,
    },
    series: [
      {
        // Use the gb-all map with no data as a basemap
        name: 'US Map',
        mapData: mapDataUSA,
        borderColor: '#FFFFFF',
        nullColor: '#E4E7EC',
        showInLegend: false,
      },
      {
        // Specify points using lat/lon
        type: 'mapbubble',
        name: 'Locations',
        color: '#2E90FA',
        data: [
          // { z: 10, keyword: "Massachusetts", lat: 42.40, lon: -71.38},
          // { z: 20, keyword: "Washington", lat: 47.48, lon: -120.36},
          // { z: 30, keyword: "California", lat: 36.74, lon: -119.59},
          // { z: 40, keyword: "Oregon", lat: 43.83, lon: -120.38},
          { z: 79, keyword: 'North East', lat: 43.29, lon: -74.21 },
          { z: 49, keyword: 'South East', lat: 63.96, lon: -143.62 },
          { z: 26, keyword: 'Mid West', lat: 37.93, lon: -90.17 },
          { z: 21, keyword: 'South West', lat: 32.31, lon: -110.92 },
          { z: 15, keyword: 'West Coast', lat: 47.75, lon: -121.09 },
          { z: 19, keyword: 'Unassiged', lat: null, lon: null },
        ],
        cursor: 'pointer',
        point: {
          events: {
            click: function () {
              console.log(this.keyword);
            },
          },
        },
      },
    ],
  };

  return (
    <HighchartsReact
      containerProps={{ style: { height: 'auto', width: '100%' } }}
      highcharts={Highcharts}
      constructorType={'mapChart'}
      options={chartOptions}
    />
  );
}

export default BubbleChart;

字符串
其他详细信息:
悬停时工具提示显示错误气泡的信息。气泡上的单击事件正确记录了区域名称。我使用的是最新版本的Highcharts和相关库。我感谢您对解决此工具提示问题的任何见解或建议。谢谢!
enter image description here
我目前正在一个React应用程序中使用Highcharts库进行数据可视化。我实现了一个Bubble Map来显示地理数据。相关库的版本详细信息如下:
“@highcharts/map-collection”:“^2.1.0”“highcharts”:“^11.1.0”“highcharts-react-official”:“^3.2.0”“proj4”:“^2.9.0”
在实现这一点时,我遇到了气泡上的工具提示问题。当我将鼠标悬停在Map上的气泡上时,工具提示显示的是另一个气泡的信息。然而,气泡上的单击事件正确记录了该区域的名称。
具体问题:
在当前版本的Highcharts中,是否存在已知的工具提示渲染问题?在气泡Map场景中,是否需要对工具提示进行任何特定的配置或调整?我正在寻求有关如何解决此工具提示问题的见解或建议,并确保它在悬停在气泡上时准确显示信息。
感谢您提供的任何帮助或指导!

jmp7cifd

jmp7cifd1#

我遇到了类似的问题,并进行了一些研究,结果显示该问题与v11.2.0版本有关。
在您的情况下,似乎您正在使用插入符号(^)来安装Highcharts版本,这将导致安装最新的可用版本,即11.2.0。要专门安装11.1.0版本,您应该从Highcharts依赖版本规范中删除插入符号(^)。

ej83mcc0

ej83mcc02#

他们的最新版本有一个问题,我在他们的github仓库中报告了这个bug。
这里是highcharts中github问题的链接:-https://github.com/highcharts/highcharts/issues/20243
因此,我在我的react web应用程序中使用了highcharts 10.3.3版本。它对我来说工作得很好。

相关问题