You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
244 lines
7.5 KiB
244 lines
7.5 KiB
var source_chart = null;
|
|
var seriesData = [];
|
|
|
|
//查询评价来源分析
|
|
function showEvalSource(data) {
|
|
var legendData = [];
|
|
seriesData = [];
|
|
if (data.length>0) {
|
|
for (var i = 0; i < data.length; i++) {
|
|
legendData.push(data[i].ota_name);
|
|
seriesData.push({value : data[i].total, name : data[i].ota_name,
|
|
itemStyle : {
|
|
normal : {
|
|
borderWidth: 3,
|
|
borderColor: "#03052b",
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}
|
|
showPie(legendData);
|
|
}
|
|
|
|
//显示
|
|
function showPie(legendData) {
|
|
var dom = document.getElementById("network_eval_source");
|
|
echarts.dispose(dom);
|
|
source_chart = echarts.init(dom);
|
|
var barSeriesArr = [];
|
|
for(var i=0 ; i < legendData.length ; i++){
|
|
for(var j=0;j<seriesData.length;j++){
|
|
// name 相等。。 赋值。
|
|
if(seriesData[j].name===legendData[i]){
|
|
barSeriesArr.push({
|
|
legendHoverLink:true,
|
|
type: 'bar',
|
|
label: {
|
|
normal: {
|
|
show: true,
|
|
position: 'top'
|
|
}
|
|
},
|
|
itemStyle: {
|
|
emphasis: {
|
|
color: new echarts.graphic.LinearGradient(
|
|
0, 0, 0, 1,
|
|
[
|
|
{offset: 0, color: '#2378f7'},
|
|
{offset: 0.7, color: '#2378f7'},
|
|
{offset: 1, color: '#83bff6'}
|
|
]
|
|
)
|
|
}
|
|
},
|
|
data: seriesData[j].value,
|
|
barMinHeight: 20
|
|
});
|
|
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
option = {
|
|
backgroundColor : '',// 背景颜色透明
|
|
xAxis : {
|
|
type : 'category',
|
|
show : true, // 设置为true时候显示
|
|
axisLine : {
|
|
show : false
|
|
},
|
|
data : legendData,
|
|
nameLocation : 'end',// 坐标轴名称显示位置。
|
|
axisLabel : {// 坐标轴刻度标签的相关设置。
|
|
interval : 0,
|
|
rotate : "45",
|
|
color : 'white'
|
|
}
|
|
},
|
|
yAxis : {
|
|
type : 'value',
|
|
show : false
|
|
},
|
|
tooltip : {
|
|
trigger : 'axis',
|
|
|
|
axisPointer : { // 坐标轴指示器,坐标轴触发有效
|
|
type : 'shadow' // 默认为直线,可选为:'line' | 'shadow'
|
|
}
|
|
},
|
|
series : [ {
|
|
name : '数量',
|
|
type : 'bar',
|
|
itemStyle : {
|
|
normal : {
|
|
color : function(params) {
|
|
var colorList = [ '#FE7D38', '#FFB51A', '#A7D01A',
|
|
'#26c686', '#00d9d9', '#1bbbf8', '#2c94fc',
|
|
'#747dfa', '#975bf9', '#DE62FO', '#F9429D',
|
|
'#EF344B', '#F4E001', '#F0805A', '#26C0C0' ];
|
|
return colorList[params.dataIndex]
|
|
},
|
|
label : {
|
|
show : true,
|
|
position : 'top'
|
|
}
|
|
}
|
|
},
|
|
//barWidth : barWidth,
|
|
data : seriesData
|
|
} ]
|
|
};
|
|
|
|
if (option && typeof option === "object") {
|
|
source_chart.setOption(option, true);
|
|
}
|
|
|
|
source_chart.on('click',function (e) {
|
|
var data = e.data;
|
|
var name = data.name.trim();
|
|
|
|
var map = {
|
|
'途牛': '1201',
|
|
'去哪儿': '1202',
|
|
'美团': '1203',
|
|
'飞猪': '1204',
|
|
'大众点评': '1205',
|
|
'携程': '1206',
|
|
'艺龙': '1207',
|
|
'同程': '1208',
|
|
'驴妈妈': '1209',
|
|
'马蜂窝': '1210',
|
|
'百度旅游': '1211',
|
|
'猫途鹰': '1212',
|
|
'安可达': '1213',
|
|
'缤客': '1214'
|
|
};
|
|
|
|
var url = _CTX+"/network/goto_simple_list.do" ;
|
|
|
|
var time = $('#openingTime').val();
|
|
var startTime,endTime;
|
|
|
|
switch (date_type) {
|
|
case 'year':
|
|
// 年
|
|
startTime = time + '-01-01' ;
|
|
endTime = time + '-12-31' ;
|
|
break;
|
|
case 'month':
|
|
// 月
|
|
startTime = time + '-01';
|
|
var timeArr = time.split('-');
|
|
var d = new Date(parseInt(timeArr[0]) , parseInt(timeArr[1]), 0);
|
|
endTime = time + '-' + d.getDate();
|
|
break;
|
|
|
|
case 'quarter':
|
|
var quarter = $('.wpbg_sxx_jidu').find('.choosez').attr('href').replace(/[^\d]/g, "");
|
|
var year = $("#openingTime").val();
|
|
// 季度
|
|
if(quarter=="1"){//第一季度
|
|
startTime = year+"-01-01";
|
|
endTime = year+"-03-31";
|
|
}else if(quarter=="2"){//第二季度
|
|
startTime = year+"-04-01";
|
|
endTime = year+"-06-30";
|
|
}else if(quarter=="3"){//第三季度
|
|
startTime = year+"-07-01";
|
|
endTime = year+"-09-30";
|
|
}else if(quarter=="4"){//第四季度
|
|
startTime = year+"-10-01";
|
|
endTime = year+"-12-31";
|
|
}
|
|
break;
|
|
}
|
|
var county = $('#county').val();
|
|
|
|
var city = $('#city').val();
|
|
|
|
var province = $('#province').val() ;
|
|
|
|
|
|
// 评论来源
|
|
url += '?criticismSource=' + map[name] ;
|
|
url += '&starttime=' + startTime;
|
|
url += '&endtime=' + endTime;
|
|
if(county){
|
|
url += '&county=' + county;
|
|
}else if(city){
|
|
url += '&city=' + city;
|
|
}else if(province){
|
|
url += '&province' + province;
|
|
}
|
|
layer.open({
|
|
type: 2,
|
|
title: "",
|
|
anim: 2,
|
|
offset: '100px',
|
|
shade: [0.7, '#333'],
|
|
area: ['1281px', '583px'],
|
|
content: url
|
|
});
|
|
})
|
|
}
|
|
|
|
// setInterval(reloadOption, 1000 * 2);
|
|
|
|
var num = 0;
|
|
//重新加载echarts(中间显示文字)
|
|
function reloadOption(){
|
|
if(source_chart){
|
|
//设置圆环跳动
|
|
seriesData[num].selected = true;
|
|
source_chart.setOption({
|
|
graphic : {
|
|
type : 'text', // [ default: image ]用 setOption 首次设定图形元素时必须指定。image, text, circle, sector, ring, polygon, polyline, rect, line, bezierCurve, arc, group,
|
|
$action : 'replace',
|
|
top : 'center', // 描述怎么根据父元素进行定位。top 和 bottom 只有一个可以生效。如果指定 top 或 bottom,则 shape 里的 y、cy 等定位属性不再生效。『父元素』是指:如果是顶层元素,父元素是 echarts 图表容器。如果是 group 的子元素,父元素就是 group 元素。
|
|
left : 'center', // 同上
|
|
style : {
|
|
text : seriesData[num].name + "\n" + seriesData[num].value, // 文本块文字。可以使用 \n 来换行。[ default: '' ]
|
|
fill : '#fff', // 填充色。
|
|
textAlign: 'center',
|
|
fontSize : 18, // 字体大小
|
|
fontWeight : 'normal' // 文字字体的粗细,可选'normal','bold','bolder','lighter'
|
|
}
|
|
},
|
|
series : [
|
|
{
|
|
data : seriesData
|
|
}
|
|
]
|
|
});
|
|
seriesData[num].selected = false;
|
|
num++;
|
|
if (num >= seriesData.length) {
|
|
num = 0;
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|