Javascript 如何设置echarts boxplot x轴标签?

Javascript 如何设置echarts boxplot x轴标签?,javascript,charts,echarts,Javascript,Charts,Echarts,如何更改echart箱线图上的x轴标签?在本例中,有5个数据集正在绘制,我需要能够为它们提供自己的x轴值/标签。我更习惯使用chartjs,但它们没有方框图。在本例中,我需要标签为['PTM 07'、'PTM 08'、'PTM 09'、'PTM 10'、'PTM 11'] <!doctype html> <html> <head> <meta charset="utf-8"> <title>eCHarts</t

如何更改echart箱线图上的x轴标签?在本例中,有5个数据集正在绘制,我需要能够为它们提供自己的x轴值/标签。我更习惯使用chartjs,但它们没有方框图。在本例中,我需要标签为['PTM 07'、'PTM 08'、'PTM 09'、'PTM 10'、'PTM 11']

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>eCHarts</title>
<!-- including ECharts file -->
<script src="https://cdn.jsdelivr.net/npm/echarts@5.0.1/dist/echarts.min.js"></script>

</head>

<body>

<!-- preparing a DOM with width and height for ECharts -->
<div id="main" style="width:600px; height:400px;"></div>
<script type="text/javascript">
    // based on prepared DOM, initialize echarts instance
    var myChart = echarts.init(document.getElementById('main'));

    // specify chart configuration item and data
    var option = {
title: [
    {
        text: 'Progress Test Progression',
        left: 'center'
    },
    {
        text: 'Some text',
        borderColor: '#999',
        borderWidth: 1,
        textStyle: {
            fontWeight: 'normal',
            fontSize: 14,
            lineHeight: 20
        },
        left: '10%',
        top: '90%'
    }
],
dataset: [{
    source: [
        [850, 740, 900, 1070, 930, 850, 950, 980, 980, 880, 1000, 980, 930, 650, 760, 810, 1000, 1000, 960, 960],
        [960, 940, 960, 940, 880, 800, 850, 880, 900, 840, 830, 790, 810, 880, 880, 830, 800, 790, 760, 800],
        [880, 880, 880, 860, 720, 720, 620, 860, 970, 950, 880, 910, 850, 870, 840, 840, 850, 840, 840, 840],
        [890, 810, 810, 820, 800, 770, 760, 740, 750, 760, 910, 920, 890, 860, 880, 720, 840, 850, 850, 780],
        [890, 840, 780, 810, 760, 810, 790, 810, 820, 850, 870, 870, 810, 740, 810, 940, 950, 800, 810, 870]
    ]
}, {
    transform: {
        type: 'boxplot',
        config: { 
            itemNameFormatter: 'Option {value}' }
    }
}, {
    fromDatasetIndex: 1,
    fromTransformResult: 1
}],
tooltip: {
    trigger: 'item',
    axisPointer: {
        type: 'shadow'
    }
},
grid: {
    left: '10%',
    right: '10%',
    bottom: '15%'
},
xAxis: {
    type: 'category',
    boundaryGap: true,
    nameGap: 30,
    splitArea: {
        show: false
    },
    splitLine: {
        show: false
    }
},
yAxis: {
    type: 'value',
    name: 'Score',
    splitArea: {
        show: true
    }
},
series: [
    {
        name: 'boxplot',
        type: 'boxplot',
        datasetIndex: 1
    }
]};

    // use configuration item and data specified to show chart
    myChart.setOption(option);
</script>

埃查特
//基于准备好的DOM,初始化echarts实例
var myChart=echarts.init(document.getElementById('main');
//指定图表配置项和数据
var选项={
标题:[
{
文本:“进度测试进度”,
左:“中间”
},
{
文本:“一些文本”,
边框颜色:'#999',
边框宽度:1,
文本样式:{
fontWeight:'正常',
尺寸:14,
线高:20
},
左:“10%”,
排名前:“90%”
}
],
数据集:[{
资料来源:[
[850, 740, 900, 1070, 930, 850, 950, 980, 980, 880, 1000, 980, 930, 650, 760, 810, 1000, 1000, 960, 960],
[960, 940, 960, 940, 880, 800, 850, 880, 900, 840, 830, 790, 810, 880, 880, 830, 800, 790, 760, 800],
[880, 880, 880, 860, 720, 720, 620, 860, 970, 950, 880, 910, 850, 870, 840, 840, 850, 840, 840, 840],
[890, 810, 810, 820, 800, 770, 760, 740, 750, 760, 910, 920, 890, 860, 880, 720, 840, 850, 850, 780],
[890, 840, 780, 810, 760, 810, 790, 810, 820, 850, 870, 870, 810, 740, 810, 940, 950, 800, 810, 870]
]
}, {
转换:{
类型:“箱线图”,
配置:{
itemNameFormatter:'选项{value}'}
}
}, {
fromDatasetIndex:1,
结果:1
}],
工具提示:{
触发器:'item',
轴指针:{
类型:“阴影”
}
},
网格:{
左:“10%”,
对:"10%",,
底部:“15%”
},
xAxis:{
类型:'类别',
边界间隙:对,
姓名差距:30,
分割区域:{
节目:假
},
分割线:{
节目:假
}
},
亚克斯:{
类型:“值”,
名称:'得分',
分割区域:{
秀:真的
}
},
系列:[
{
名称:“箱线图”,
类型:“箱线图”,
数据集索引:1
}
]};
//使用指定的配置项和数据显示图表
myChart.setOption(选项);

更换

itemNameFormatter: 'Option {value}' }

其中,参数值将为0,1,2,3。。。
关键是这是一个你可以返回任何你喜欢的函数…

谢谢…我将重新讨论这个函数,看看是否可以使用你的建议。
itemNameFormatter: function (params) {
            return scopes[params.value];
    }