|
@@ -1,28 +1,28 @@
|
|
|
-export default (config) => {
|
|
|
|
|
|
|
+export default (config, silent) => {
|
|
|
const { viewType, option } = config;
|
|
const { viewType, option } = config;
|
|
|
let o;
|
|
let o;
|
|
|
switch(viewType) {
|
|
switch(viewType) {
|
|
|
case 'bar': {
|
|
case 'bar': {
|
|
|
- o = barConfig(option);
|
|
|
|
|
|
|
+ o = barConfig(option, silent);
|
|
|
break;
|
|
break;
|
|
|
}
|
|
}
|
|
|
case 'pie': {
|
|
case 'pie': {
|
|
|
- o = pieConfig(option);
|
|
|
|
|
|
|
+ o = pieConfig(option, silent);
|
|
|
break;
|
|
break;
|
|
|
}
|
|
}
|
|
|
case 'line': {
|
|
case 'line': {
|
|
|
- o = lineConfig(option);
|
|
|
|
|
|
|
+ o = lineConfig(option, silent);
|
|
|
break;
|
|
break;
|
|
|
}
|
|
}
|
|
|
case 'scatter': {
|
|
case 'scatter': {
|
|
|
- o = scatterConfig(option);
|
|
|
|
|
|
|
+ o = scatterConfig(option, silent);
|
|
|
break;
|
|
break;
|
|
|
}
|
|
}
|
|
|
case 'aggregateTable': {
|
|
case 'aggregateTable': {
|
|
|
- o = tableConfig(option);
|
|
|
|
|
|
|
+ o = tableConfig(option, silent);
|
|
|
break;
|
|
break;
|
|
|
}case 'dataView' : {
|
|
}case 'dataView' : {
|
|
|
- o = tableConfig(option);
|
|
|
|
|
|
|
+ o = tableConfig(option, silent);
|
|
|
break;
|
|
break;
|
|
|
}
|
|
}
|
|
|
default:{
|
|
default:{
|
|
@@ -33,51 +33,77 @@ export default (config) => {
|
|
|
return o;
|
|
return o;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-function barConfig(option) {
|
|
|
|
|
|
|
+function barConfig(option, silent) {
|
|
|
const { xAxis, serieses, xTitle, yTitle } = option;
|
|
const { xAxis, serieses, xTitle, yTitle } = option;
|
|
|
|
|
|
|
|
let o = {
|
|
let o = {
|
|
|
- animation: false,
|
|
|
|
|
- legend: {show: false},
|
|
|
|
|
|
|
+ animation: !silent,
|
|
|
|
|
+ tooltip : {
|
|
|
|
|
+ show: !silent,
|
|
|
|
|
+ trigger: "axis",
|
|
|
|
|
+ axisPointer: {
|
|
|
|
|
+ type: "cross",
|
|
|
|
|
+ label: {
|
|
|
|
|
+ backgroundColor: "#6a7985"
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ legend: {
|
|
|
|
|
+ show: !silent
|
|
|
|
|
+ },
|
|
|
grid: {
|
|
grid: {
|
|
|
- left: 0,
|
|
|
|
|
- right: 0,
|
|
|
|
|
- top: 0,
|
|
|
|
|
- bottom: 0,
|
|
|
|
|
- containLabel: false
|
|
|
|
|
|
|
+ left: silent ? 0 : '10%',
|
|
|
|
|
+ right: silent ? 0 : '10%',
|
|
|
|
|
+ top: silent ? 0 : 60,
|
|
|
|
|
+ bottom: silent ? 0 : 60,
|
|
|
|
|
+ containLabel: !silent
|
|
|
},
|
|
},
|
|
|
xAxis: [{
|
|
xAxis: [{
|
|
|
|
|
+ show: !silent,
|
|
|
type: 'category',
|
|
type: 'category',
|
|
|
- boundaryGap: false,
|
|
|
|
|
data: xAxis,
|
|
data: xAxis,
|
|
|
name: xTitle || '横轴',
|
|
name: xTitle || '横轴',
|
|
|
- show: false
|
|
|
|
|
}],
|
|
}],
|
|
|
yAxis: [{
|
|
yAxis: [{
|
|
|
|
|
+ show: !silent,
|
|
|
name: yTitle || '纵轴',
|
|
name: yTitle || '纵轴',
|
|
|
- type: 'value',
|
|
|
|
|
- show: false
|
|
|
|
|
|
|
+ type: 'value'
|
|
|
}],
|
|
}],
|
|
|
series: serieses.map(s => {
|
|
series: serieses.map(s => {
|
|
|
return {
|
|
return {
|
|
|
name: s.name,
|
|
name: s.name,
|
|
|
type: 'bar',
|
|
type: 'bar',
|
|
|
data: s.value,
|
|
data: s.value,
|
|
|
- showSymbol: false,
|
|
|
|
|
- silent: true
|
|
|
|
|
|
|
+ showSymbol: !silent,
|
|
|
|
|
+ silent,
|
|
|
}
|
|
}
|
|
|
})
|
|
})
|
|
|
}
|
|
}
|
|
|
return o;
|
|
return o;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-function pieConfig(option) {
|
|
|
|
|
|
|
+function pieConfig(option, silent) {
|
|
|
|
|
|
|
|
const { xAxis, columnName, serieses } = option;
|
|
const { xAxis, columnName, serieses } = option;
|
|
|
|
|
|
|
|
let o = {
|
|
let o = {
|
|
|
- animation: false,
|
|
|
|
|
- legend: {show: false},
|
|
|
|
|
|
|
+ animation: !silent,
|
|
|
|
|
+ grid: {
|
|
|
|
|
+ left: silent ? 0 : '10%',
|
|
|
|
|
+ right: silent ? 0 : '10%',
|
|
|
|
|
+ top: silent ? 0 : 60,
|
|
|
|
|
+ bottom: silent ? 0 : 60,
|
|
|
|
|
+ containLabel: !silent
|
|
|
|
|
+ },
|
|
|
|
|
+ tooltip : {
|
|
|
|
|
+ show: !silent,
|
|
|
|
|
+ trigger: 'item',
|
|
|
|
|
+ formatter: "{a} <br/>{b} : {c} ({d}%)"
|
|
|
|
|
+ },
|
|
|
|
|
+ legend: {
|
|
|
|
|
+ show: !silent,
|
|
|
|
|
+ data: xAxis
|
|
|
|
|
+ },
|
|
|
series : [
|
|
series : [
|
|
|
{
|
|
{
|
|
|
name: columnName,
|
|
name: columnName,
|
|
@@ -85,38 +111,55 @@ function pieConfig(option) {
|
|
|
// radius : '55%',
|
|
// radius : '55%',
|
|
|
// center: ['50%', '60%'],
|
|
// center: ['50%', '60%'],
|
|
|
data: serieses[0].value,
|
|
data: serieses[0].value,
|
|
|
- label: { show: false },
|
|
|
|
|
- labelLine: { show: false },
|
|
|
|
|
- silent: true
|
|
|
|
|
|
|
+ label: { show: !silent },
|
|
|
|
|
+ labelLine: { show: !silent },
|
|
|
|
|
+ itemStyle: {
|
|
|
|
|
+ emphasis: {
|
|
|
|
|
+ shadowBlur: 10,
|
|
|
|
|
+ shadowOffsetX: 0,
|
|
|
|
|
+ shadowColor: 'rgba(0, 0, 0, 0.5)'
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ silent
|
|
|
}
|
|
}
|
|
|
]
|
|
]
|
|
|
};
|
|
};
|
|
|
return o;
|
|
return o;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-function lineConfig(option) {
|
|
|
|
|
|
|
+function lineConfig(option, silent) {
|
|
|
const { serieses, xTitle, yTitle } = option;
|
|
const { serieses, xTitle, yTitle } = option;
|
|
|
|
|
|
|
|
let o = {
|
|
let o = {
|
|
|
- animation: false,
|
|
|
|
|
|
|
+ animation: !silent,
|
|
|
grid: {
|
|
grid: {
|
|
|
- left: 0,
|
|
|
|
|
- right: 0,
|
|
|
|
|
- top: 0,
|
|
|
|
|
- bottom: 0,
|
|
|
|
|
- containLabel: false
|
|
|
|
|
|
|
+ left: silent ? 0 : '10%',
|
|
|
|
|
+ right: silent ? 0 : '10%',
|
|
|
|
|
+ top: silent ? 0 : 60,
|
|
|
|
|
+ bottom: silent ? 0 : 60,
|
|
|
|
|
+ containLabel: !silent
|
|
|
|
|
+ },
|
|
|
|
|
+ tooltip: {
|
|
|
|
|
+ show: !silent,
|
|
|
|
|
+ trigger: 'axis',
|
|
|
|
|
+ axisPointer: {
|
|
|
|
|
+ type: 'cross'
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ legend: {
|
|
|
|
|
+ show: !silent
|
|
|
},
|
|
},
|
|
|
- legend: {show: false},
|
|
|
|
|
xAxis: {
|
|
xAxis: {
|
|
|
|
|
+ show: !silent,
|
|
|
name: xTitle,
|
|
name: xTitle,
|
|
|
- type: 'time',
|
|
|
|
|
- show: false
|
|
|
|
|
|
|
+ type: 'time'
|
|
|
},
|
|
},
|
|
|
yAxis: {
|
|
yAxis: {
|
|
|
|
|
+ show: !silent,
|
|
|
name: yTitle,
|
|
name: yTitle,
|
|
|
- type: 'value',
|
|
|
|
|
- show: false
|
|
|
|
|
|
|
+ type: 'value'
|
|
|
},
|
|
},
|
|
|
|
|
+
|
|
|
series: serieses.map(s => {
|
|
series: serieses.map(s => {
|
|
|
return {
|
|
return {
|
|
|
name: s.name,
|
|
name: s.name,
|
|
@@ -124,8 +167,8 @@ function lineConfig(option) {
|
|
|
data: s.mdata.map(m => {
|
|
data: s.mdata.map(m => {
|
|
|
return [m.date, m.value]
|
|
return [m.date, m.value]
|
|
|
}),
|
|
}),
|
|
|
- showSymbol: false,
|
|
|
|
|
- silent: true
|
|
|
|
|
|
|
+ showSymbol: !silent,
|
|
|
|
|
+ silent
|
|
|
}
|
|
}
|
|
|
})
|
|
})
|
|
|
};
|
|
};
|
|
@@ -133,35 +176,54 @@ function lineConfig(option) {
|
|
|
return o;
|
|
return o;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-function scatterConfig(option) {
|
|
|
|
|
|
|
+function scatterConfig(option, silent) {
|
|
|
const { serieses, xTitle, yTitle } = option;
|
|
const { serieses, xTitle, yTitle } = option;
|
|
|
let o = {
|
|
let o = {
|
|
|
- animation: false,
|
|
|
|
|
|
|
+ animation: !silent,
|
|
|
grid: {
|
|
grid: {
|
|
|
- left: 0,
|
|
|
|
|
- right: 0,
|
|
|
|
|
- top: 0,
|
|
|
|
|
- bottom: 0,
|
|
|
|
|
- containLabel: false
|
|
|
|
|
|
|
+ left: silent ? 10 : '10%',
|
|
|
|
|
+ right: silent ? 10 : '10%',
|
|
|
|
|
+ top: silent ? 10 : 60,
|
|
|
|
|
+ bottom: silent ? 10 : 60,
|
|
|
|
|
+ containLabel: !silent
|
|
|
},
|
|
},
|
|
|
- xAxis : {
|
|
|
|
|
- type : 'value',
|
|
|
|
|
- name: xTitle,
|
|
|
|
|
- scale:true,
|
|
|
|
|
- splitLine: {
|
|
|
|
|
- show: false
|
|
|
|
|
- },
|
|
|
|
|
- show: false
|
|
|
|
|
|
|
+ tooltip : {
|
|
|
|
|
+ show: !silent,
|
|
|
|
|
+ showDelay : 0,
|
|
|
|
|
+ axisPointer:{
|
|
|
|
|
+ show: true,
|
|
|
|
|
+ type : 'cross',
|
|
|
|
|
+ lineStyle: {
|
|
|
|
|
+ type : 'dashed',
|
|
|
|
|
+ width : 1
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
},
|
|
},
|
|
|
- yAxis : {
|
|
|
|
|
- type : 'value',
|
|
|
|
|
- name: yTitle,
|
|
|
|
|
- scale:true,
|
|
|
|
|
- splitLine: {
|
|
|
|
|
- show: false
|
|
|
|
|
- },
|
|
|
|
|
- show: false
|
|
|
|
|
|
|
+ legend: {
|
|
|
|
|
+ show: !silent
|
|
|
},
|
|
},
|
|
|
|
|
+ xAxis : [
|
|
|
|
|
+ {
|
|
|
|
|
+ show: !silent,
|
|
|
|
|
+ type : 'value',
|
|
|
|
|
+ name: xTitle,
|
|
|
|
|
+ scale:true,
|
|
|
|
|
+ splitLine: {
|
|
|
|
|
+ show: false
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ ],
|
|
|
|
|
+ yAxis : [
|
|
|
|
|
+ {
|
|
|
|
|
+ show: !silent,
|
|
|
|
|
+ type : 'value',
|
|
|
|
|
+ name: yTitle,
|
|
|
|
|
+ scale:true,
|
|
|
|
|
+ splitLine: {
|
|
|
|
|
+ show: false
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ ],
|
|
|
series : serieses.map(s => {
|
|
series : serieses.map(s => {
|
|
|
return {
|
|
return {
|
|
|
name: s.name,
|
|
name: s.name,
|
|
@@ -169,14 +231,14 @@ function scatterConfig(option) {
|
|
|
data: s.mdata.map(m => {
|
|
data: s.mdata.map(m => {
|
|
|
return [m.date, m.value]
|
|
return [m.date, m.value]
|
|
|
}),
|
|
}),
|
|
|
- silent: true
|
|
|
|
|
|
|
+ silent
|
|
|
}
|
|
}
|
|
|
})
|
|
})
|
|
|
};
|
|
};
|
|
|
return o;
|
|
return o;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-function tableConfig(option) {
|
|
|
|
|
|
|
+function tableConfig(option, silent) {
|
|
|
const { columns, data } = option;
|
|
const { columns, data } = option;
|
|
|
let o = {
|
|
let o = {
|
|
|
columns,
|
|
columns,
|