|
@@ -107,7 +107,7 @@ let app = new Vue({
|
|
|
value: "66",
|
|
|
},
|
|
|
{
|
|
|
- label: "工商变更登记",
|
|
|
+ label: "变更登记",
|
|
|
value: "77",
|
|
|
},
|
|
|
],
|
|
@@ -474,6 +474,24 @@ let app = new Vue({
|
|
|
],
|
|
|
];
|
|
|
let that = this;
|
|
|
+ let sumA = 42;
|
|
|
+ // 所有在100范围外的全部变成0,其他值相应增加/减少sumA
|
|
|
+ right5.forEach((item) => {
|
|
|
+ item.forEach((item2) => {
|
|
|
+ if (Number(item2[1]) < 0) {
|
|
|
+ item2[1] = that.$set(item2, 1, Number(that.numSub(item2[1], sumA)));
|
|
|
+ } else if (Number(item2[1]) > 0) {
|
|
|
+ item2[1] = that.$set(item2, 1, Number(item2[1]) + sumA);
|
|
|
+ }
|
|
|
+ if (Number(item2[1]) < -100 - sumA) {
|
|
|
+ item2[1] = that.$set(item2, 1, 0);
|
|
|
+ item2[1] = that.$set(item2, 2, 0);
|
|
|
+ } else if (Number(item2[1]) > 100 + sumA) {
|
|
|
+ item2[1] = that.$set(item2, 1, 0);
|
|
|
+ item2[1] = that.$set(item2, 2, 0);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ });
|
|
|
const itemStyle = {
|
|
|
// opacity: 0.8,
|
|
|
shadowBlur: 10,
|
|
@@ -481,8 +499,8 @@ let app = new Vue({
|
|
|
shadowOffsetY: 0,
|
|
|
shadowColor: "rgba(0,0,0,0.3)",
|
|
|
};
|
|
|
- let myChart = echarts.init(this.$refs["echartR1"]);
|
|
|
- myChart.on("showTip", (params) => {
|
|
|
+ let echartR1d1 = echarts.init(this.$refs["echartR1"]);
|
|
|
+ echartR1d1.on("showTip", (params) => {
|
|
|
// 如果是7或者15并且满足防抖则切换
|
|
|
if (
|
|
|
(params.dataIndex == 5 || params.dataIndex == 11) &&
|
|
@@ -492,7 +510,7 @@ let app = new Vue({
|
|
|
setTimeout(() => {
|
|
|
option.dataZoom[0].endValue = option.dataZoom[0].endValue + 6;
|
|
|
option.dataZoom[0].startValue = option.dataZoom[0].startValue + 6;
|
|
|
- myChart.setOption(option);
|
|
|
+ echartR1d1.setOption(option);
|
|
|
// 防止勿刷新做的防抖
|
|
|
setTimeout(() => {
|
|
|
that.echartR2Fd = true;
|
|
@@ -504,7 +522,7 @@ let app = new Vue({
|
|
|
setTimeout(() => {
|
|
|
option.dataZoom[0].endValue = 0;
|
|
|
option.dataZoom[0].startValue = 5;
|
|
|
- myChart.setOption(option);
|
|
|
+ echartR1d1.setOption(option);
|
|
|
// 防止勿刷新做的防抖
|
|
|
setTimeout(() => {
|
|
|
that.echartR2Fd = true;
|
|
@@ -558,21 +576,36 @@ let app = new Vue({
|
|
|
textStyle: {
|
|
|
color: "#fff",
|
|
|
},
|
|
|
- // tooltip: {
|
|
|
- // show: true,
|
|
|
- // trigger: "axis",
|
|
|
- // textStyle: {
|
|
|
- // color: "#FFF", // 文字的颜色
|
|
|
- // fontSize: "20", // 文字字体大小
|
|
|
- // fontFamily: "Microsoft YaHei",
|
|
|
- // },
|
|
|
- // formatter: (data) => {
|
|
|
- // return `${data[0].value[0]}<br /><span style="display:inline-block;border-radius:50%; width:14px;height:14px;background-color:${data[0].color}"></span> ${data[0].seriesName}:${data[0].data[1]}亿<br /><span style="display:inline-block;border-radius:50%; width:7px;height:7px;background-color:${data[1].color}"></span> ${data[1].seriesName}:${data[1].data[1]}亿<br /><span style="display:inline-block;border-radius:50%; width:7px;height:7px;background-color:${data[2].color}"></span> ${data[2].seriesName}:${data[2].data[1]}亿`;
|
|
|
- // },
|
|
|
- // axisPointer: {
|
|
|
- // // // type: 'cross',',
|
|
|
- // },
|
|
|
- // },
|
|
|
+ tooltip: {
|
|
|
+ show: true,
|
|
|
+ trigger: "axis",
|
|
|
+ backgroundColor: "rgba(50,50,50,0.7)", // 提示框浮层的背景颜色
|
|
|
+ textStyle: {
|
|
|
+ color: "#FFF", // 文字的颜色
|
|
|
+ fontSize: "20", // 文字字体大小
|
|
|
+ fontFamily: "Microsoft YaHei",
|
|
|
+ },
|
|
|
+ formatter: (data) => {
|
|
|
+ return `${
|
|
|
+ data[0].value[0]
|
|
|
+ }<br /><span style="display:inline-block;border-radius:50%; width:7px;height:7px;background-color:${
|
|
|
+ data[0].color
|
|
|
+ }"></span> ${data[0].seriesName}:${that.numFormat(
|
|
|
+ data[0].data[2]
|
|
|
+ )}亿<br /><span style="display:inline-block;border-radius:50%; width:7px;height:7px;background-color:${
|
|
|
+ data[1].color
|
|
|
+ }"></span> ${data[1].seriesName}:${that.numFormat(
|
|
|
+ data[1].data[2]
|
|
|
+ )}亿<br /><span style="display:inline-block;border-radius:50%; width:7px;height:7px;background-color:${
|
|
|
+ data[2].color
|
|
|
+ }"></span> ${data[2].seriesName}:${that.numFormat(
|
|
|
+ data[2].data[2]
|
|
|
+ )}亿`;
|
|
|
+ },
|
|
|
+ axisPointer: {
|
|
|
+ // // type: 'cross',',
|
|
|
+ },
|
|
|
+ },
|
|
|
grid: {
|
|
|
top: "10%",
|
|
|
right: "4%",
|
|
@@ -580,9 +613,12 @@ let app = new Vue({
|
|
|
bottom: "5%",
|
|
|
},
|
|
|
yAxis: {
|
|
|
- name: "亿元",
|
|
|
+ min: -101 - sumA,
|
|
|
+ max: 101 + sumA,
|
|
|
+ maxInterval: 1,
|
|
|
splitLine: {
|
|
|
- show: true,
|
|
|
+ show: false,
|
|
|
+ // interval:,
|
|
|
lineStyle: {
|
|
|
color: "#68b4dd66",
|
|
|
type: "dashed",
|
|
@@ -591,9 +627,23 @@ let app = new Vue({
|
|
|
axisLine: {
|
|
|
show: false,
|
|
|
},
|
|
|
+ axisTick: {
|
|
|
+ show: false,
|
|
|
+ },
|
|
|
axisLabel: {
|
|
|
show: true,
|
|
|
- formatter: "{value}",
|
|
|
+ // formatter: '{value}',
|
|
|
+ formatter(data) {
|
|
|
+ if (data == 100 + sumA) {
|
|
|
+ return "100%";
|
|
|
+ } else if (data == -100 - sumA) {
|
|
|
+ return "-100%";
|
|
|
+ } else if (data == -5 - sumA) {
|
|
|
+ return "-5%";
|
|
|
+ } else if (data == 5 + sumA) {
|
|
|
+ return "5%";
|
|
|
+ }
|
|
|
+ },
|
|
|
textStyle: {
|
|
|
color: "#fff",
|
|
|
fontSize: "20",
|
|
@@ -607,9 +657,9 @@ let app = new Vue({
|
|
|
},
|
|
|
},
|
|
|
xAxis: {
|
|
|
- data: right5[0].map((item) => item[0]),
|
|
|
+ data: commonCompany,
|
|
|
axisLine: {
|
|
|
- show: true, //隐藏X轴轴线
|
|
|
+ show: false, //隐藏X轴轴线
|
|
|
lineStyle: {
|
|
|
color: "#005094",
|
|
|
width: 1,
|
|
@@ -623,7 +673,7 @@ let app = new Vue({
|
|
|
},
|
|
|
},
|
|
|
axisTick: {
|
|
|
- show: false, //隐藏X轴刻度
|
|
|
+ show: true, //隐藏X轴刻度
|
|
|
},
|
|
|
axisLabel: {
|
|
|
show: true,
|
|
@@ -643,7 +693,77 @@ let app = new Vue({
|
|
|
itemStyle: itemStyle,
|
|
|
data: right5[0],
|
|
|
symbolSize: function (data) {
|
|
|
- return Math.sqrt(data[1]) * 9;
|
|
|
+ if ((data[2] > 0 && data[2] < 50) || data[2] == 50) {
|
|
|
+ return 40;
|
|
|
+ } else if ((data[2] > 50 && data[2] < 100) || data[2] == 100) {
|
|
|
+ return 70;
|
|
|
+ } else if (data[2] > 100) {
|
|
|
+ return 100;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ markLine: {
|
|
|
+ symbol: "none",
|
|
|
+ data: [
|
|
|
+ {
|
|
|
+ name: "100%",
|
|
|
+ yAxis: 100 + sumA,
|
|
|
+ lineStyle: {
|
|
|
+ // color: '#fff',
|
|
|
+ },
|
|
|
+ label: {
|
|
|
+ show: false,
|
|
|
+ formatter: "{b}",
|
|
|
+ position: "right",
|
|
|
+ color: "#fff",
|
|
|
+ fontSize: 20,
|
|
|
+ label: {
|
|
|
+ show: false,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: "5%",
|
|
|
+ yAxis: 5 + sumA,
|
|
|
+ lineStyle: {
|
|
|
+ // color: '#fff',
|
|
|
+ },
|
|
|
+ label: {
|
|
|
+ show: false,
|
|
|
+ formatter: "{b}",
|
|
|
+ position: "right",
|
|
|
+ color: "#fff",
|
|
|
+ fontSize: 20,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: "-5%",
|
|
|
+ yAxis: -5 - sumA,
|
|
|
+ lineStyle: {
|
|
|
+ // color: '#fff',
|
|
|
+ },
|
|
|
+ label: {
|
|
|
+ show: false,
|
|
|
+ formatter: "{b}",
|
|
|
+ position: "right",
|
|
|
+ color: "#fff",
|
|
|
+ fontSize: 20,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: "100%",
|
|
|
+ yAxis: -100 - sumA,
|
|
|
+ lineStyle: {
|
|
|
+ // color: '#fff',
|
|
|
+ },
|
|
|
+ label: {
|
|
|
+ show: false,
|
|
|
+ formatter: "{b}",
|
|
|
+ position: "right",
|
|
|
+ color: "#fff",
|
|
|
+ fontSize: 20,
|
|
|
+ },
|
|
|
+ },
|
|
|
+ ],
|
|
|
},
|
|
|
},
|
|
|
{
|
|
@@ -652,7 +772,13 @@ let app = new Vue({
|
|
|
itemStyle: itemStyle,
|
|
|
data: right5[1],
|
|
|
symbolSize: function (data) {
|
|
|
- return Math.sqrt(data[1]) * 8;
|
|
|
+ if ((data[1] > 0 && data[1] < 50) || data[1] == 50) {
|
|
|
+ return 40;
|
|
|
+ } else if ((data[1] > 50 && data[1] < 100) || data[1] == 100) {
|
|
|
+ return 70;
|
|
|
+ } else if (data[1] > 100) {
|
|
|
+ return 100;
|
|
|
+ }
|
|
|
},
|
|
|
},
|
|
|
{
|
|
@@ -661,17 +787,23 @@ let app = new Vue({
|
|
|
itemStyle: itemStyle,
|
|
|
data: right5[2],
|
|
|
symbolSize: function (data) {
|
|
|
- return Math.sqrt(data[1]) * 7;
|
|
|
+ if ((data[1] > 0 && data[1] < 50) || data[1] == 50) {
|
|
|
+ return 40;
|
|
|
+ } else if ((data[1] > 50 && data[1] < 100) || data[1] == 100) {
|
|
|
+ return 70;
|
|
|
+ } else if (data[1] > 100) {
|
|
|
+ return 100;
|
|
|
+ }
|
|
|
},
|
|
|
},
|
|
|
],
|
|
|
};
|
|
|
- myChart.on("click", function (param) {
|
|
|
+ echartR1d1.on("click", function (param) {
|
|
|
// that.showChartLTipDouble(param.name)
|
|
|
that.projectListTipShow = true;
|
|
|
});
|
|
|
- myChart.setOption(option);
|
|
|
- tools.loopShowTooltip(myChart, option, {
|
|
|
+ echartR1d1.setOption(option);
|
|
|
+ tools.loopShowTooltip(echartR1d1, option, {
|
|
|
interval: 2000,
|
|
|
loopSeries: true,
|
|
|
});
|
|
@@ -1353,7 +1485,7 @@ let app = new Vue({
|
|
|
this.timer = setInterval(() => {
|
|
|
this.inner++;
|
|
|
this.topIndex++;
|
|
|
- this.topIndex = this.topIndex % this.meansList.length;
|
|
|
+ this.topIndex = this.topIndex % 8;
|
|
|
this.witchs = this.inner % this.investData.investList.length;
|
|
|
this.innerDeg = this.inner * angle;
|
|
|
}, 2000);
|