echarts x轴数据显示问题

图片描述
这是设计图 现在问题是怎么在圆点下边添加文字 啊 我改变下边的x轴的data 上边的图形就显示不出来了 麻烦各位大神看看,下边是echarts里面跟他相似的图
http://echarts.baidu.com/demo...

下边这是我写的代码效果图
图片描述

app.title = '气泡图';

var data = [
    [[28604,77,17096869,'Australia',1990],[31163,77.4,27662440,'Canada',1990],[1516,68,1154605773,'China',1990],[13670,74.7,10582082,'Cuba',1990],[28599,75,4986705,'Finland',1990],[29476,77.1,56943299,'France',1990],[31476,75.4,78958237,'Germany',1990],[28666,78.1,254830,'Iceland',1990],[1777,57.7,870601776,'India',1990],[29550,79.1,122249285,'Japan',1990],[2076,67.9,20194354,'North Korea',1990],[12087,72,42972254,'South Korea',1990],[24021,75.4,3397534,'New Zealand',1990],[43296,76.8,4240375,'Norway',1990]],
    [[44056,81.8,23968973,'Australia',2015],[43294,81.7,35939927,'Canada',2015],[13334,76.9,1376048943,'China',2015],[21291,78.5,11389562,'Cuba',2015],[38923,80.8,5503457,'Finland',2015],[37599,81.9,64395345,'France',2015],[44053,81.1,80688545,'Germany',2015],[42182,82.8,329425,'Iceland',2015],[5903,66.8,1311050527,'India',2015],[36162,83.5,126573481,'Japan',2015],[1390,71.4,25155317,'North Korea',2015],[34644,80.7,50293439,'South Korea',2015],[34186,80.6,4528526,'New Zealand',2015],[64304,81.6,5210967,'Norway',2015]]
];

option = {
    backgroundColor: new echarts.graphic.RadialGradient(0.3, 0.3, 0.8, [{
        offset: 0,
        color: '#f7f8fa'
    }, {
        offset: 1,
        color: '#cdd0d5'
    }]),
    title: {
        text: '1990 与 2015 年各国家人均寿命与 GDP'
    },
    legend: {
        right: 10,
        data: ['上升', '下降']
    },
    xAxis: {
        splitLine: {
            show:false,
            lineStyle: {
                type: 'dashed'
            }
        }
    },
    yAxis: {
        show:false,
        splitLine: {
            lineStyle: {
               
            }
        },
        scale: true
    },
    series: [{
        name: '上升',
        data: data[0],
        type: 'scatter',
        symbolSize: function (data) {
            return Math.sqrt(5000) / 2;
        },
        label: {
            emphasis: {
                show: true,
                formatter: function (param) {
                    return param.data[3];
                },
                position: 'bottom'
            }
        },
        itemStyle: {
            normal: {
                label: {
                    label : {
                        show: true,
                        formatter : '{b}'
                    }
                },
                shadowBlur: 10,
                shadowColor: 'rgba(120, 36, 50, 0.5)',
                shadowOffsetY: 5,
                color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                    offset: 0,
                    color: 'rgb(251, 118, 123)'
                }, {
                    offset: 1,
                    color: 'rgb(204, 46, 72)'
                }])
            }
        }
    }, {
        name: '下降',
        data: data[1],
        type: 'scatter',
        symbolSize: function (data) {
            return Math.sqrt(5000) / 2;
        },
        label: {
            emphasis: {
                show: true,
                formatter: function (param) {
                    return param.data[3];
                },
                position: 'top'
            }
        },
        itemStyle: {
            normal: {
                shadowBlur: 10,
                shadowColor: 'rgba(25, 100, 150, 0.5)',
                shadowOffsetY: 5,
                color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                    offset: 0,
                    color: 'rgb(129, 227, 238)'
                }, {
                    offset: 1,
                    color: 'rgb(25, 183, 207)'
                }])
            }
        }
    }]
};
阅读 10.6k
3 个回答

可以的哦。
app.title = '气泡图';

var data = [

[[28604,77,17096869,'Australia',1990],[31163,77.4,27662440,'Canada',1990],[1516,68,1154605773,'China',1990],[13670,74.7,10582082,'Cuba',1990],[28599,75,4986705,'Finland',1990],[29476,77.1,56943299,'France',1990],[31476,75.4,78958237,'Germany',1990],[28666,78.1,254830,'Iceland',1990],[1777,57.7,870601776,'India',1990],[29550,79.1,122249285,'Japan',1990],[2076,67.9,20194354,'North Korea',1990],[12087,72,42972254,'South Korea',1990],[24021,75.4,3397534,'New Zealand',1990],[43296,76.8,4240375,'Norway',1990],[10088,70.8,38195258,'Poland',1990],[19349,69.6,147568552,'Russia',1990],[10670,67.3,53994605,'Turkey',1990],[26424,75.7,57110117,'United Kingdom',1990],[37062,75.4,252847810,'United States',1990]],
[[44056,81.8,23968973,'Australia',2015],[43294,81.7,35939927,'Canada',2015],[13334,76.9,1376048943,'China',2015],[21291,78.5,11389562,'Cuba',2015],[38923,80.8,5503457,'Finland',2015],[37599,81.9,64395345,'France',2015],[44053,81.1,80688545,'Germany',2015],[42182,82.8,329425,'Iceland',2015],[5903,66.8,1311050527,'India',2015],[36162,83.5,126573481,'Japan',2015],[1390,71.4,25155317,'North Korea',2015],[34644,80.7,50293439,'South Korea',2015],[34186,80.6,4528526,'New Zealand',2015],[64304,81.6,5210967,'Norway',2015],[24787,77.3,38611794,'Poland',2015],[23038,73.13,143456918,'Russia',2015],[19360,76.5,78665830,'Turkey',2015],[38225,81.4,64715810,'United Kingdom',2015],[53354,79.1,321773631,'United States',2015]]

];

option = {

backgroundColor: new echarts.graphic.RadialGradient(0.3, 0.3, 0.8, [{
    offset: 0,
    color: '#f7f8fa'
}, {
    offset: 1,
    color: '#cdd0d5'
}]),
title: {
    text: '1990 与 2015 年各国家人均寿命与 GDP'
},
legend: {
    right: 10,
    data: ['1990', '2015']
},
xAxis: {
    splitLine: {
        lineStyle: {
            type: 'dashed'
        }
    }
},
yAxis: {
    splitLine: {
        lineStyle: {
            type: 'dashed'
        }
    },
    scale: true
},
series: [{
    name: '1990',
    data: data[0],
    type: 'scatter',
    symbolSize: function (data) {
        return Math.sqrt(data[2]) / 5e2;
    },
    label: {
        normal: {
            show: true,
            formatter: function (param) {
                return param.data[3];
            },
            position: 'bottom'
        },
    },
    itemStyle: {
        normal: {
            shadowBlur: 10,
            shadowColor: 'rgba(120, 36, 50, 0.5)',
            shadowOffsetY: 5,
            color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                offset: 0,
                color: 'rgb(251, 118, 123)'
            }, {
                offset: 1,
                color: 'rgb(204, 46, 72)'
            }])
        }
    }
}, {
    name: '2015',
    data: data[1],
    type: 'scatter',
    symbolSize: function (data) {
        return Math.sqrt(data[2]) / 5e2;
    },
    label: {
        normal: {
            show:true,
            formatter: function (param) {
                return param.data[3];
            },
            position: 'bottom'
        }
    },
    itemStyle: {
        normal: {   
            shadowBlur: 10,
            shadowColor: 'rgba(25, 100, 150, 0.5)',
            shadowOffsetY: 5,
            color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                offset: 0,
                color: 'rgb(129, 227, 238)'
            }, {
                offset: 1,
                color: 'rgb(25, 183, 207)'
            }])
        }
    }
}]

};
图片描述


echarts里面的itemStyle(图形样式)参数分有 normal 和 emphasis 两个状态。normal 是图形在默认状态下的样式;emphasis 是图形在高亮状态下的样式。
echarts的具体配置可以根据自己的需要在官方文档下面找到。例如楼主提的这个问题,可以参考:http://echarts.baidu.com/opti...。这里显示介绍了散点图的配置项。☺


你说的x轴数据更改了显示不出来的问题嘛,你要看看自己的数据有没有搞错哟。

![图片上传中...]
图片描述

根据自己的数据去做相应的调整,应该是没有问题的哈。


我主要是没有很明白你的那张设计图的意思,横纵坐标分别对应的啥子呢。你现在的意思是再加个时间轴嘛。
因为你开发用的是echart3,添加时间轴的官方文档在http://echarts.baidu.com/opti...
我按照之前的例子再写了一下。我的意思是以月份为横坐标,纵坐标随便,然后以年份为时间轴,就相同于统计了每年不同月份的不同名称的上升下降情况。代码中的[1,89.5,30,'北京',"上升"],第一个表示月份x,第二个随便写的y值,第三个为圆圈的大小,第四个值为上升还是下降。把2010-2015年的数据都放到一个对象里面,通过对象的属性名去获取相应年份的数据。

示例代码

var dataMap = {

2010:[[[1,89.5,30,'北京',"上升"],[2,77.5,30,'天气',"上升"]],[[2,81.5,20,'北京',"下降"],[1,80.5,20,'天气',"下降"]]],
2011:[[[2,90,30,'北京',"上升"],[1,77.6,30,'天气',"上升"]],[[1,81.3,20,'北京',"下降"],[2,80.3,20,'天气',"下降"]]],
2012:[[[1,89,30,'北京',"上升"],[2,77.7,30,'天气',"上升"]],[[1,81.2,20,'北京',"下降"],[2,80.6,20,'天气',"下降"]]],
2013:[[[1,88.9,30,'北京',"上升"],[2,77.6,30,'天气',"上升"]],[[2,81.6,20,'北京',"下降"],[1,80.4,20,'天气',"下降"]]],
2014:[[[1,89.8,30,'北京',"上升"],[2,77.4,30,'天气',"上升"]],[[1,81.3,20,'北京',"下降"],[2,80.3,20,'天气',"下降"]]],
2015:[[[1,89.1,30,'北京',"上升"],[2,77.3,30,'天气',"上升"]],[[2,81.5,20,'北京',"下降"],[1,80.5,20,'天气',"下降"]]]

};
option = {

baseOption: {
    timeline: {
        axisType: 'time',
        autoPlay: true,
        playInterval: 1000,
        data: ['2010', '2011', '2012', '2013', '2014', '2015'],
        label: {
            formatter : function(s) {
                return (new Date(s)).getFullYear();
            }
        }
    },
    title: {
        subtext: '数据来自国家统计局'
    },
    legend: {
        right: 10,
        data: ['上升', '下降']
    },
    xAxis: {
        splitLine: {
            lineStyle: {
                type: 'dashed'
            }
        }
    },
    yAxis: {
        splitLine: {
            lineStyle: {
                type: 'dashed'
            }
        },
        scale: true
    },
    series: [
        { // 系列一的一些其他配置
            type: 'scatter',
        }
    ]
},
options: [
{ // 这是'2010-01-01' 对应的 option
    title: {
        text: '2010年统计值'
    },
    series: [{
        name: '上升',
        data: dataMap['2010'][0],
        type: 'scatter',
        symbolSize: function (data) {
            return data[2] ;
        },
        label: {
            normal: {
                show: true,
                formatter: function (param) {
                    return param.data[3];
                },
                position: 'bottom'
            }
        },
        itemStyle: {
            normal: {
                shadowBlur: 10,
                shadowColor: 'rgba(120, 36, 50, 0.5)',
                shadowOffsetY: 5,
                color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                    offset: 0,
                    color: 'rgb(251, 118, 123)'
                }, {
                    offset: 1,
                    color: 'rgb(204, 46, 72)'
                }])
            }
        }
    }, {
        name: '下降',
        data: dataMap['2010'][3],
        type: 'scatter',
        symbolSize: function (data) {
            return data[2];
        },
        label: {
            normal: {
                show: true,
                formatter: function (param) {
                    return param.data[3];
                },
                position: 'bottom'
            }
        },
        itemStyle: {
            normal: {
                shadowBlur: 10,
                shadowColor: 'rgba(25, 100, 150, 0.5)',
                shadowOffsetY: 5,
                color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                    offset: 0,
                    color: 'rgb(129, 227, 238)'
                }, {
                    offset: 1,
                    color: 'rgb(25, 183, 207)'
                }])
            }
        }
    }]
},
{ // 这是'2011-01-01' 对应的 option
    title: {
        text: '2011年统计值'
    },
    series: [{
        name: '上升',
        data: dataMap['2011'][0],
        type: 'scatter',
        symbolSize: function (data) {
            return data[2] ;
        },
        label: {
            normal: {
                show: true,
                formatter: function (param) {
                    return param.data[3];
                },
                position: 'bottom'
            }
        },
        itemStyle: {
            normal: {
                shadowBlur: 10,
                shadowColor: 'rgba(120, 36, 50, 0.5)',
                shadowOffsetY: 5,
                color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                    offset: 0,
                    color: 'rgb(251, 118, 123)'
                }, {
                    offset: 1,
                    color: 'rgb(204, 46, 72)'
                }])
            }
        }
    }, {
        name: '下降',
        data: dataMap['2011'][4],
        type: 'scatter',
        symbolSize: function (data) {
            return data[2];
        },
        label: {
            normal: {
                show: true,
                formatter: function (param) {
                    return param.data[3];
                },
                position: 'bottom'
            }
        },
        itemStyle: {
            normal: {
                shadowBlur: 10,
                shadowColor: 'rgba(25, 100, 150, 0.5)',
                shadowOffsetY: 5,
                color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                    offset: 0,
                    color: 'rgb(129, 227, 238)'
                }, {
                    offset: 1,
                    color: 'rgb(25, 183, 207)'
                }])
            }
        }
    }]
},
{ // 这是'2012-01-01' 对应的 option
    title: {
        text: '2012年统计值'
    },
    series: [{
        name: '上升',
        data: dataMap['2012'][0],
        type: 'scatter',
        symbolSize: function (data) {
            return data[2] ;
        },
        label: {
            normal: {
                show: true,
                formatter: function (param) {
                    return param.data[3];
                },
                position: 'bottom'
            }
        },
        itemStyle: {
            normal: {
                shadowBlur: 10,
                shadowColor: 'rgba(120, 36, 50, 0.5)',
                shadowOffsetY: 5,
                color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                    offset: 0,
                    color: 'rgb(251, 118, 123)'
                }, {
                    offset: 1,
                    color: 'rgb(204, 46, 72)'
                }])
            }
        }
    }, {
        name: '下降',
        data: dataMap['2012'][5],
        type: 'scatter',
        symbolSize: function (data) {
            return data[2];
        },
        label: {
            normal: {
                show: true,
                formatter: function (param) {
                    return param.data[3];
                },
                position: 'bottom'
            }
        },
        itemStyle: {
            normal: {
                shadowBlur: 10,
                shadowColor: 'rgba(25, 100, 150, 0.5)',
                shadowOffsetY: 5,
                color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                    offset: 0,
                    color: 'rgb(129, 227, 238)'
                }, {
                    offset: 1,
                    color: 'rgb(25, 183, 207)'
                }])
            }
        }
    }]
},
{ // 这是'2013-01-01' 对应的 option
    title: {
        text: '2013年统计值'
    },
    series: [{
        name: '上升',
        data: dataMap['2013'][0],
        type: 'scatter',
        symbolSize: function (data) {
            return data[2] ;
        },
        label: {
            normal: {
                show: true,
                formatter: function (param) {
                    return param.data[3];
                },
                position: 'bottom'
            }
        },
        itemStyle: {
            normal: {
                shadowBlur: 10,
                shadowColor: 'rgba(120, 36, 50, 0.5)',
                shadowOffsetY: 5,
                color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                    offset: 0,
                    color: 'rgb(251, 118, 123)'
                }, {
                    offset: 1,
                    color: 'rgb(204, 46, 72)'
                }])
            }
        }
    }, {
        name: '下降',
        data: dataMap['2013'][6],
        type: 'scatter',
        symbolSize: function (data) {
            return data[2];
        },
        label: {
            normal: {
                show: true,
                formatter: function (param) {
                    return param.data[3];
                },
                position: 'bottom'
            }
        },
        itemStyle: {
            normal: {
                shadowBlur: 10,
                shadowColor: 'rgba(25, 100, 150, 0.5)',
                shadowOffsetY: 5,
                color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                    offset: 0,
                    color: 'rgb(129, 227, 238)'
                }, {
                    offset: 1,
                    color: 'rgb(25, 183, 207)'
                }])
            }
        }
    }]
},
{ // 这是'2014-01-01' 对应的 option
    title: {
        text: '2014年统计值'
    },
    series: [{
        name: '上升',
        data: dataMap['2014'][0],
        type: 'scatter',
        symbolSize: function (data) {
            return data[2] ;
        },
        label: {
            normal: {
                show: true,
                formatter: function (param) {
                    return param.data[3];
                },
                position: 'bottom'
            }
        },
        itemStyle: {
            normal: {
                shadowBlur: 10,
                shadowColor: 'rgba(120, 36, 50, 0.5)',
                shadowOffsetY: 5,
                color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                    offset: 0,
                    color: 'rgb(251, 118, 123)'
                }, {
                    offset: 1,
                    color: 'rgb(204, 46, 72)'
                }])
            }
        }
    }, {
        name: '下降',
        data: dataMap['2014'][7],
        type: 'scatter',
        symbolSize: function (data) {
            return data[2];
        },
        label: {
            normal: {
                show: true,
                formatter: function (param) {
                    return param.data[3];
                },
                position: 'bottom'
            }
        },
        itemStyle: {
            normal: {
                shadowBlur: 10,
                shadowColor: 'rgba(25, 100, 150, 0.5)',
                shadowOffsetY: 5,
                color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                    offset: 0,
                    color: 'rgb(129, 227, 238)'
                }, {
                    offset: 1,
                    color: 'rgb(25, 183, 207)'
                }])
            }
        }
    }]
},
{ // 这是'2015-01-01' 对应的 option
    title: {
        text: '2015年统计值'
    },
    series: [{
        name: '上升',
        data: dataMap['2015'][0],
        type: 'scatter',
        symbolSize: function (data) {
            return data[2] ;
        },
        label: {
            normal: {
                show: true,
                formatter: function (param) {
                    return param.data[3];
                },
                position: 'bottom'
            }
        },
        itemStyle: {
            normal: {
                shadowBlur: 10,
                shadowColor: 'rgba(120, 36, 50, 0.5)',
                shadowOffsetY: 5,
                color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                    offset: 0,
                    color: 'rgb(251, 118, 123)'
                }, {
                    offset: 1,
                    color: 'rgb(204, 46, 72)'
                }])
            }
        }
    }, {
        name: '下降',
        data: dataMap['2015'][8],
        type: 'scatter',
        symbolSize: function (data) {
            return data[2];
        },
        label: {
            normal: {
                show: true,
                formatter: function (param) {
                    return param.data[3];
                },
                position: 'bottom'
            }
        },
        itemStyle: {
            normal: {
                shadowBlur: 10,
                shadowColor: 'rgba(25, 100, 150, 0.5)',
                shadowOffsetY: 5,
                color: new echarts.graphic.RadialGradient(0.4, 0.3, 1, [{
                    offset: 0,
                    color: 'rgb(129, 227, 238)'
                }, {
                    offset: 1,
                    color: 'rgb(25, 183, 207)'
                }])
            }
        }
    }]
}
]

};
图片描述

图片描述

反正大概思想就是这个样子的,多看一下官方API肯定能行的呢。

把series.label里面的emphasis改成normal

label.emphasis是鼠标移上去的效果,把emphasis改成normal就好了,或者保留emphasis再写一个normal

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题