简体   繁体   English

如何使用 Apache Echarts 为多个系列设置工具提示标签?

[英]How do you set tooltip labels for multiple series using Apache Echarts?

I'm trying to generate a line chart that uses date for the x-axis and two different y-axis.我正在尝试生成一个折线图,该折线图使用 x 轴和两个不同的 y 轴的日期。 I have it mostly working, but I can't get the tooltip to display the label properly for the second line.我大部分时间都在工作,但我无法获得工具提示以正确显示第二行的标签。

To see this, go to the ECharts Demo Editor and enter the following code:要查看此内容,请转到ECharts 演示编辑器并输入以下代码:

option = {
    xAxis: {
        type: 'time'
    },
    yAxis: [
        {
            type: 'value'
        },
        {
            type: 'value'
        }
    ],
    dataset: {
        source: [
            { date: '2020-01-24', orders: 4, sales: 250 },
            { date: '2020-01-25', orders: 3, sales: 250 },
            { date: '2020-01-26', orders: 2, sales: 375 },
            { date: '2020-01-27', orders: 2, sales: 380 },
            { date: '2020-01-28', orders: 4, sales: 325 },
            { date: '2020-01-29', orders: 5, sales: 375 },
            { date: '2020-01-30', orders: 6, sales: 500 },
            { date: '2020-01-31', orders: 4, sales: 425 },
            { date: '2020-02-01', orders: 2, sales: 280 },
            { date: '2020-02-03', orders: 3, sales: 580 },
            { date: '2020-02-04', orders: 4, sales: 250 },
            { date: '2020-02-05', orders: 4, sales: 350 }
        ]
    },
    series: [
        { 
            type: 'line',
            yAxisIndex: 0, 
            dimensions: [
                {
                    type: 'time',
                    name: 'date',
                    displayName: ''
                },
                {
                    type: 'float',
                    name: 'orders',
                    displayName: 'Orders'
                }
            ]
        },
        {
            type: 'line', 
            yAxisIndex: 1, 
            dimensions:[
                {
                    type: 'time',
                    name: 'date',
                    displayName: ''
                },
                {
                    type: 'int',
                    name: 'sales',
                    displayName: 'Sales'
                }
            ]
        }
    ],
    tooltip: {
        trigger: 'axis'
    }
};

As you can see, the lines render correctly, as do both y axes, but the label for the second series (green line) is empty rather than Sales .如您所见,线条和 y 轴都正确呈现,但第二个系列(绿线)的标签为空而不是Sales However, if I delete the first series from the array, Sales becomes the blue line and the label works correctly in the tooltip, so there seems to be something I'm missing when using multiple series.但是,如果我从数组中删除第一个系列, Sales将变为蓝线并且标签在工具提示中正常工作,因此在使用多个系列时似乎缺少某些东西。

I suspect the fix for this is quite simple and obvious, but I've spent a fair amount of time on it and haven't had any luck.我怀疑对此的修复非常简单明了,但我已经花了相当多的时间在它上面并且没有任何运气。 Any help would be greatly appreciated.任何帮助将不胜感激。

Give name to series instead of displayName to dimension.为系列指定name ,而不是为维度指定displayName

series: [
    { 
        type: 'line',
        yAxisIndex: 0,
        name:'Orders', // Here
        dimensions: [
            {
                type: 'time',
                name: 'date'
            },
            {
                type: 'float',
                name: 'orders'
            }
        ]
    },
    {
        type: 'line', 
        yAxisIndex: 1, 
        name:'Sales', // Here
        dimensions:[
            {
                type: 'time',
                name: 'date'
            },
            {
                type: 'int',
                name: 'sales'
            }
        ]
    }
]

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM