Echarts图表中的tooltip无法显示

实验环境

Echarts 3.5.3

问题

引入一个Echarts标准饼图以后,图表可以正常显示,而tooltip无法显示,┑( ̄Д  ̄)┍ 一下子感觉low了好多,页面就像死掉了一样

这里写图片描述

就像这样,鼠标放在上面却没显示tooltip。。。

上代码:

<div class="col-lg-6">
                            <div class="content-panel">
                                <h4><i class="fa fa-angle-right"></i> 新老顾客概览</h4>
                                <div class="panel-body text-center">
                                <canvas id="test2" height="300" width="400"></canvas>
                                    <!--<div id="test2" style="width: 490px;height:305px;"></div>-->
                                    <script type="text/javascript">
                                        // 基于准备好的dom,初始化echarts实例
                                        var myChart = echarts.init(document.getElementById('test2'));

                                        // 指定图表的配置项和数据
                                        var option = {
                                            title: {
                                                text: '新老顾客比例',
                                                subtext: '',
                                                x: 'center'
                                            },
                                            tooltip: {
                                                trigger: 'item',
                                                formatter: "{a} <br/>{b} : {c} ({d}%)"
                                            },
                                            legend: {
                                                orient: 'vertical',
                                                left: 'left',
                                                data: ['新顾客', '老顾客']
                                            },
                                            toolbox: {
                                                show: true,
                                                feature: {
                                                    mark: {
                                                        show: true
                                                    },
                                                    dataView: {
                                                        show: true,
                                                        readOnly: true
                                                    },
                                                    magicType: {
                                                        show: true,
                                                        type: ['pie', 'funnel'],
                                                        option: {
                                                            funnel: {
                                                                x: '25%',
                                                                width: '50%',
                                                                funnelAlign: 'left',
                                                                max: 1548
                                                            }
                                                        }
                                                    },
                                                    restore: {
                                                        show: true
                                                    },
                                                    saveAsImage: {
                                                        show: true
                                                    }
                                                }
                                            },
                                            calculable: true,
                                            series: [
                                                {
                                                    name: '访问来源',
                                                    type: 'pie',
                                                    radius: '55%',
                                                    center: ['50%', '60%'],
                                                    data: [
                                                        {
                                                            value: 205,
                                                            name: '新顾客'
                                                        },
                                                        {
                                                            value: 610,
                                                            name: '老顾客'
                                                        }
            ],
                                                    itemStyle: {
                                                        normal: {
                                                            color: function (params) {
                                                                // build a color map as your need.
                                                                var colorList = ['#22DDDD', '#F0805A'];
                                                                return colorList[params.dataIndex]
                                                            },
                                                        },
                                                        emphasis: {
                                                            shadowBlur: 10,
                                                            shadowOffsetX: 0,
                                                            shadowColor: 'rgba(0, 0, 0, 0.5)'
                                                        }
                                                    }
        }
    ]
                                        };



                                        // 使用刚指定的配置项和数据显示图表。
                                        myChart.setOption(option);
                                    </script>
                                </div>
                            </div>
                        </div>

原因

因为我设置的容器都是canvas,所以导致里面的tooltip的容器不会显示;

解决

把canvas换成div就可以了,至于里面的一些样式啊宽高啊自己调下就ok了

这里写图片描述

d==( ̄▽ ̄*)b 牛逼

ECharts是一个强大的JavaScript数据可视化库,它提供了丰富的图表类型和交互功能,其 tooltip(提示框)是图表一个关键元素,用于在鼠标悬停在图表上特定数据点时显示详细信息。EChartstooltip支持自定义样式、内容格式以及显示行为。 以下是ECharts tooltip的基本介绍: 1. **基础使用**:默认情况下,当你将鼠标悬停在图表上的数据点时,tooltip显示相应的值。你可以通过配置`tooltip`选项来启用或关闭这个功能。 ```js option = { tooltip: { trigger: 'item' // 或者 'axis' 或者 'none' }, series: [...] }; ``` 2. **样式定制**:可以通过`formatter`属性自定义提示框的内容格式,使用模板字符串或函数返回值。还可以设置`positioner`来改变提示框的位置策略。 ```js tooltip: { formatter: function (params) { return params.name + '<br>' + params.value; }, positioner: function (point, size, rect) { return [point, rect.height - point - size.height]; // 上移提示框 } } ``` 3. **事件控制**:可以监听`onShow`、`onHide`等事件,以实现更复杂的交互逻辑。 4. **系列间联动**:如果图表有多个系列,可以通过`cross轴联动`或者`同名系列联动`,使得鼠标悬停在某一数据点时,所有相关的图表都会显示相应提示。 相关问题: 1. EChartstooltip有哪些触发方式? 2. 如何在ECharts添加自定义提示框样式? 3. 如何在ECharts实现图表间的联动提示?
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值