Echarts散点图二维数组只有一个点无法显示tooltip

a598186335 2023-05-06 15:11:10

麻烦大佬帮忙看看

做的是一个3D散点图,但有时候数据为一个点,鼠标放在点上就不显示提示了。

数据为两个以上的时候,就能正常显示了;比如设置为下面数据:

var dataS = [
  [3.275154, 2.957587,5],[2.275154, 2.957587,3],
];

下面的代码可直接在ECharts官网运行(https://echarts.apache.org/examples/zh/editor.html?c=scatter3D-dataset&gl=1&version=5.4.2),使用最新5.4.2版本:

var dataS = [
  [3.275154, 2.957587,5]
];
$.get(
  ROOT_PATH + '/data/asset/data/life-expectancy-table.json',
  
  function (data) {
    option = {
    tooltip: {},
    xAxis3D: {
        name: "x",  //x轴显示为x
        type: 'value',
        // min: 'dataMin',//获取数据中的最值
        // max: 'dataMax'
        min: -10,
        max: 10,
        interval: 20,//坐标轴刻度标签的显示间隔,在类目轴中有效
        axisTick: {
          show: false, //显示每个值对应的刻度
        },
        axisLine:{     //x轴坐标轴,false为隐藏,true为显示
                show: true
        },
        axisLabel: {
          show: false    ////是否显示刻度 (刻度上的数字,或者类目), false为隐藏,true为显示
        },
        itemStyle: {
          borderColor: "#fff",
          backgroundColor: "#fff"
        },
    },
    yAxis3D: {
        name: "y",//y轴显示为y
        type: 'value',
        splitNumber: 5,
        axisTick: {
          show: false, //显示每个值对应的刻度
        },
        min: -10,
        max: 10,
        interval: 4
    },
    zAxis3D: {
        name: "z",//z轴显示为z
        type: 'value',
        min: -10,
        max: 10,
        interval: 4,
        axisTick: {
          show: false, //显示每个值对应的刻度
        },
    },
    grid3D: {
        axisLine: {
            lineStyle:{//坐标轴样式
              color:'#070707',//轴线颜色
              opacity:.8,//(单个刻度不会受影响)
              width: 1//线条宽度
            }
        },
        axisPointer: {
            lineStyle: {
                color: '#f00'//坐标轴指示线
            },
            show: false//不坐标轴指示线
        },
        viewControl: {
            // autoRotate: true,//旋转展示
            // projection: 'orthographic'
            // beta:0,
            distance:400, //与视角的距离,值越大,图离视角越远,图越小
            alpha:7, //绕x轴旋转的角度(上下旋转),增大,视角顺时针增大(向上)
            beta:20, //绕y轴旋转的角度(左右旋转),增大,视角逆时针增大(向右)
            center:[-15,-5,-20]  //第一个参数:增大,视角沿x轴正方向水平右移动(图向左);第二个参数:增大,视角沿y轴正方向垂直向上移动(图向下);第三个参数:增大,视角向z轴正方向移动(图变小)
        },
        boxWidth: 120,
        boxHeight: 70,
        boxDepth: 120,
        top: -100
    },

    series: [{
        type: 'scatter3D',
        dimensions: ['x', 'y', 'z'//悬浮到点时弹出的显示框信息
        ],
        // encode: {
            // x: [3, 1, 5],      // 表示维度 3、1、5 映射到 x 轴。
            // y: 1,              // 表示维度 2 映射到 y 轴。
            // z: 3,
            // tooltip:['a','c','b'], // 表示维度 3、2、4 会在 tooltip 中显示。
            // label: 'a'           // 表示 label 使用维度 3。
        // },
        data: dataS,
        symbolSize: 6,//点的大小
        // symbol: 'triangle',
        itemStyle: {
            // borderWidth: 1,
            color: "#87f0e5",
            // borderColor: 'rgba(255,255,255,0.8)'//边框样式
        },
        emphasis: {
            itemStyle: {
                color: '#ccc'//高亮
            }
        },
        // itemStyle: {
        //     color: "#87f0e5"
        // }
    }],
    backgroundColor: "#FFFFF0",
    
};
    myChart.setOption(option);
  }
);

 

...全文
819 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
咖啡有点酷 2024-06-12
  • 打赏
  • 举报
回复

笨办法就是加一条[-999999999,-999999999,-999999999,'']
然后3个维度都设min:0 就可以解决了

m0_49526706 2024-05-13
  • 打赏
  • 举报
回复

怎么解决的啊

资源下载链接为: https://pan.quark.cn/s/d9ef5828b597 在本文中,我们将详细探讨如何利用ECharts库来创建自定义地图,并在地图上展示散点图,同时定制化Tooltip内容。ECharts是由百度开发的一款基于JavaScript的数据可视化工具,支持丰富的图表类型,如柱状图、折线图、饼图以及地图等。通过其强大的地图功能,我们可以构建个性化的数据可视化应用。 ECharts内置了多种地图,例如中国地图和世界地图,同时也支持自定义地图的使用。若要使用自定义地图,需准备包含区域边界信息的地图JSON数据。在实际应用中,我们可能需要创建特定地区或城市的地图,以便更精准地展示地理位置信息。 散点图用于展示数据点在二维空间中的分布情况。在ECharts中,可以通过设置series中的type为scatter,并将coordinateSystem设置为geo,使散点在地图上准确定位。散点的具体位置由data数组中的经纬度坐标决定。 当鼠标悬停在某个数据点上时,我们希望地图上的对应区域能够高亮显示。这可以通过配置emphasis属性实现。例如,可以设置geo系列的emphasis下的itemStyle属性,调整高亮状态下的颜色和透明度。 TooltipECharts中用于显示数据信息的浮动提示框。要自定义Tooltip的内容,可以在tooltip配置项中进行设置。通过formatter函数返回自定义的HTML字符串,可以展示数据点的值、额外描述信息,甚至嵌入图片或链接。在我们的场景中,Tooltip需要显示每个散点的详细信息,如地理位置和数据指标等。 实现上述功能需要编写JavaScript代码,主要包括初始化ECharts实例、配置option对象以及加载地图JSON数据等步骤。以下是一个简化的代码示例: 文件名zfzy可能是“自定义地图资源”的拼音

158

社区成员

发帖
与我相关
我的任务
社区描述
前端社区是web技术探讨社区,更多优秀的技术将会在这里进行分享,望各位工程师们踊跃加入
社区管理员
  • 前端阿皓
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧