这是设计图 现在问题是怎么在圆点下边添加文字 啊 我改变下边的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)' }]) } } }]};
解决方案
可以的哦。
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肯定能行的呢。