jjsp_web/bns/js/compreDisplay/compreDisplayEcharts.js

1480 lines
35 KiB
JavaScript
Raw Normal View History

2024-12-06 18:32:24 +08:00
let timeOut = null,
timeOut2 = null,
timeOut3 = null,
timeOut4;
let myChart3 = echarts.init(document.getElementById("echarts-one"));
let myChart4 = echarts.init(document.getElementById("echarts-two"));
let myChart7 = echarts.init(document.getElementById("echarts-five"));
let myChart8 = echarts.init(document.getElementById("echarts-six"));
let myChart9 = echarts.init(document.getElementById("plan-echarts"));
let myChart10 = echarts.init(document.getElementById("ticket-history-echarts"));
/*日计划echarts*/
function initEchartsOne(listMap) {
let nameList = [];
let dataList = [];
let dataList2 = [];
if (listMap != null && listMap.length > 0) {
$.each(listMap, function (index, item) {
nameList.push(item.cityName);
// if(isBd){
// dataList.push(item.totalNum/2);
// dataList2.push(item.executedNum/2);
// }else{
dataList.push(item.totalNum);
dataList2.push(item.executedNum);
// }
});
}
// 基于准备好的dom初始化echarts图表
let fontSize = "14",
fontFamily = "Alibaba PuHuiTi R",
fontColor = "#fff";
option = {
backgroundColor: "transparent",
color: ["#1E3AFF", "#13D850"],
tooltip: {
trigger: "axis",
axisPointer: {
type: "shadow",
},
backgroundColor: "rgba(0, 0, 0, 0.63)", //设置背景颜色
textStyle: {
color: "#fff",
fontFamily: "Alibaba PuHuiTi R",
},
borderColor: "rgba(255,255,255, .5)",
},
grid: {
left: "1%",
right: "3%",
bottom: "5%",
top: "10%",
containLabel: true,
},
dataZoom: [
{
type: "inside",
zoomOnMouseWheel: false,
moveOnMouseMove: true,
moveOnMouseWheel: true,
startValue: 0,
endValue: 5,
},
],
legend: {
show: false,
data: ["计划数", "已执行"],
},
xAxis: {
type: "category",
axisLine: {
lineStyle: {
color: "#101C4A",
fontSize: 12,
},
},
axisLabel: {
interval: 0,
color: fontColor,
fontSize: fontSize,
fontFamily: fontFamily,
},
axisTick: {
show: false,
},
data: nameList,
},
yAxis: {
type: "value",
min: 0,
minInterval: 1,
nameTextStyle: {
fontSize: fontSize,
color: fontColor,
align: "center",
},
splitLine: {
lineStyle: {
color: "#063374",
type: "dashed", // dotted 虚线
},
},
splitArea: { show: false },
axisLine: {
show: false,
},
axisTick: {
show: false,
},
axisLabel: {
fontSize: fontSize,
fontFamily: fontFamily,
color: fontColor,
},
},
series: [
{
type: "line",
// symbol: "none",
// showSymbol: false,
symbolSize: 8,
smooth: true, // 是否曲线
name: "计划数", // 图例对应类别
data: dataList, // 纵坐标数据
label: {
show: true,
position: "top",
textStyle: {
color: fontColor,
fontFamily: fontFamily,
},
},
lineStyle: {
width: 4, //线条设置
},
areaStyle: {
color: {
type: "linear",
x: 0, //右
y: 0, //下
x2: 0, //左
y2: 1, //上
colorStops: [
{
offset: 0,
color: "#1E3AFF30", // 0% 处的颜色
},
{
offset: 1,
color: "#1E3AFF10", // 100% 处的颜色
},
],
},
},
},
{
type: "line",
smooth: true,
name: "已执行",
data: dataList2,
symbolSize: 8,
lineStyle: {
width: 4, //线条设置
},
label: {
show: true,
position: "top",
textStyle: {
color: fontColor,
fontFamily: fontFamily,
},
},
areaStyle: {
color: {
type: "linear",
x: 0, //右
y: 0, //下
x2: 0, //左
y2: 1, //上
colorStops: [
{
offset: 0,
color: "#13D85030", // 0% 处的颜色
},
{
offset: 1,
color: "#13D85010", // 100% 处的颜色
},
],
},
},
},
],
};
myChart3.setOption(option, true);
myChart3.on("mousemove", stop);
myChart3.on("globalout", goMove);
autoMove();
// 自动滚动
function autoMove() {
if (nameList != null && nameList.length > 0) {
clearInterval(timeOut);
//自动滚动
timeOut = setInterval(() => {
if (
option.dataZoom[0].endValue === nameList.length ||
option.dataZoom[0].endValue > nameList.length
) {
option.dataZoom[0].endValue = 5;
option.dataZoom[0].startValue = 0;
} else {
option.dataZoom[0].endValue = option.dataZoom[0].endValue + 6;
option.dataZoom[0].startValue = option.dataZoom[0].startValue + 6;
}
myChart3.setOption(option);
}, 4000);
}
}
//停止滚动
function stop() {
clearInterval(timeOut);
}
//继续滚动
function goMove() {
autoMove();
}
// echarts移入事件
myChart3.getZr().on("mousemove", (param) => {
let pointInPixel = [param.offsetX, param.offsetY];
if (myChart3.containPixel("grid", pointInPixel)) {
myChart3.getZr().setCursorStyle("pointer");
} else {
myChart3.getZr().setCursorStyle("default");
}
});
myChart3.off("click").on("click", function (params) {
let buildName = params.name;
let seriesName = params.seriesName;
if(seriesName === '计划数'){
seriesName = '';
}else if(seriesName === '已执行'){
seriesName = '1';
}
openDayRisk(buildName, seriesName, dayType);
});
window.addEventListener("resize", function () {
myChart3.resize();
});
}
/*周风险echarts*/
function initEchartsTwo(nameList, twoRiskData, threeRiskData) {
let fontSize = "14",
fontFamily = "Alibaba PuHuiTi R",
fontColor = "#fff";
// 基于准备好的dom初始化echarts图表
let xAxisList = nameList;
let data = twoRiskData;
let data2 = threeRiskData;
option = {
backgroundColor: "transparent",
color: ["#dd690b", "#ffe91f"],
tooltip: {
trigger: "axis",
axisPointer: {
type: "shadow",
},
backgroundColor: "rgba(0, 0, 0, 0.63)", //设置背景颜色
textStyle: {
color: "#fff",
fontFamily: "Alibaba PuHuiTi R",
},
borderColor: "rgba(255,255,255, .5)",
},
grid: {
left: "1%",
right: "3%",
bottom: "5%",
top: "8%",
containLabel: true,
},
dataZoom: [
{
type: "inside",
zoomOnMouseWheel: false,
moveOnMouseMove: true,
moveOnMouseWheel: true,
startValue: 0,
endValue: 5,
},
],
legend: {
show: false,
data: ["二级", "三级"],
},
xAxis: {
type: "category",
axisLine: {
lineStyle: {
color: "#101C4A",
fontSize: 12,
},
},
axisLabel: {
interval: 0,
color: fontColor,
fontSize: fontSize,
fontFamily: fontFamily,
},
axisTick: {
show: false,
},
data: xAxisList,
},
yAxis: {
type: "value",
min: 0,
// minInterval: 1,
nameTextStyle: {
fontSize: fontSize,
color: fontColor,
align: "center",
},
splitLine: {
lineStyle: {
color: "#063374",
type: "dashed", // dotted 虚线
},
},
splitArea: { show: false },
axisLine: {
show: false,
},
axisTick: {
show: false,
},
axisLabel: {
fontSize: fontSize,
fontFamily: fontFamily,
color: fontColor,
},
},
series: [
{
type: "line",
// symbol: "none",
// showSymbol: false,
symbolSize: 8,
smooth: true, // 是否曲线
name: "二级", // 图例对应类别
data: data2, // 纵坐标数据
lineStyle: {
width: 4, //线条设置
},
label: {
show: true,
position: "top",
textStyle: {
color: fontColor,
fontFamily: fontFamily,
},
},
areaStyle: {
color: {
type: "linear",
x: 0, //右
y: 0, //下
x2: 0, //左
y2: 1, //上
colorStops: [
{
offset: 0,
color: "#dd690b30", // 0% 处的颜色
},
{
offset: 1,
color: "#dd690b10", // 100% 处的颜色
},
],
},
},
},
{
type: "line",
smooth: true,
name: "三级",
data: data,
symbolSize: 8,
lineStyle: {
width: 4, //线条设置
},
label: {
show: true,
position: "top",
textStyle: {
color: fontColor,
fontFamily: fontFamily,
},
},
areaStyle: {
color: {
type: "linear",
x: 0, //右
y: 0, //下
x2: 0, //左
y2: 1, //上
colorStops: [
{
offset: 0,
color: "#ffe91f30", // 0% 处的颜色
},
{
offset: 1,
color: "#ffe91f10", // 100% 处的颜色
},
],
},
},
},
],
};
myChart4.setOption(option, true);
myChart4.on("mousemove", stop);
myChart4.on("globalout", goMove);
autoMove();
// 自动滚动
function autoMove() {
if (xAxisList != null && xAxisList.length > 0) {
clearInterval(timeOut4);
//自动滚动
timeOut4 = setInterval(() => {
if (
option.dataZoom[0].endValue === xAxisList.length ||
option.dataZoom[0].endValue > xAxisList.length
) {
option.dataZoom[0].endValue = 5;
option.dataZoom[0].startValue = 0;
} else {
option.dataZoom[0].endValue = option.dataZoom[0].endValue + 6;
option.dataZoom[0].startValue = option.dataZoom[0].startValue + 6;
}
myChart4.setOption(option, true);
}, 4000);
}
}
//停止滚动
function stop() {
clearInterval(timeOut4);
}
//继续滚动
function goMove() {
autoMove();
}
// echarts移入事件
myChart4.getZr().on("mousemove", (param) => {
let pointInPixel = [param.offsetX, param.offsetY];
if (myChart4.containPixel("grid", pointInPixel)) {
myChart4.getZr().setCursorStyle("pointer");
} else {
myChart4.getZr().setCursorStyle("default");
}
});
myChart4.off("click").on("click", function (params) {
let name = params.name;
let seriesName = params.seriesName;
let weekRiskDate = $("#weekRiskDate").val();
openWeekRisk(weekRiskDate, seriesName, name);
});
window.addEventListener("resize", function () {
myChart4.resize();
});
}
/*站班会柱状图*/
function initEchartsFive(nameList, dataList) {
clearInterval(timeOut3);
let xAxisList = [];
let data = [];
xAxisList = nameList;
data = dataList;
let fontSize = "16";
let option = {
backgroundColor: "transparent",
tooltip: {
trigger: "axis",
axisPointer: {
type: "shadow",
},
backgroundColor: "rgba(0, 0, 0, 0.63)", //设置背景颜色
textStyle: {
color: "#fff",
fontFamily: "Alibaba PuHuiTi R",
},
borderColor: "rgba(255,255,255, .5)",
},
grid: {
left: "1%",
right: "3%",
bottom: "3%",
top: "10%",
containLabel: true,
},
calculable: true,
legend: {
show: false,
icon: "rect",
// orient: 'horizontal',
itemWidth: 15,
itemHeight: 15,
textStyle: {
fontSize: 16, //字体大小
color: "#fff", //字体颜色
fontFamily: "Alibaba PuHuiTi R",
},
right: "3%", //距离右侧
},
dataZoom: [
{
type: "inside",
zoomOnMouseWheel: false,
moveOnMouseMove: true,
moveOnMouseWheel: true,
startValue: 0,
endValue: 6,
},
],
xAxis: [
{
type: "category",
axisLabel: {
interval: 0, // 解决x轴名称过长问题
textStyle: {
color: "#fff",
fontSize: 16,
fontFamily: "Alibaba PuHuiTi R",
},
},
axisLine: {
show: false,
lineStyle: {
//y轴网格线设置
color: "#2c2c2c",
width: 1,
},
},
data: xAxisList,
triggerEvent: true,
},
],
yAxis: [
{
type: "value",
// name: "单位/个",
nameGap: 8,
nameTextStyle: {
color: "#8fd5f3",
},
axisTick: {
show: false,
},
axisLine: {
show: false,
lineStyle: {
//y轴网格线设置
color: "#063374",
width: 1,
},
},
splitLine: {
//保留网格线
show: true,
lineStyle: {
//y轴网格线设置
color: "#063374",
width: 1,
type: "dashed",
},
},
axisLabel: {
show: true,
textStyle: {
fontSize: 16,
color: "#fff", //字体颜色
fontFamily: "Alibaba PuHuiTi R",
},
},
},
],
series: [
{
// name: nameList.length > 4 ? '地市' : '风险等级',
type: "bar",
z: 1,
barWidth: 8,
barGap: "100%",
label: {
show: true,
position: "top",
textStyle: {
color: "#fff",
},
},
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [
{
offset: 0,
color: "#1158E2",
},
// {
// offset: 0.7,
// color: barData.color[1]
// },
{
offset: 1,
color: "#74CAFF",
},
]),
},
},
data: data,
},
],
};
myChart7.setOption(option, true);
if (xAxisList.length > 4) {
autoMove();
myChart7.on("mousemove", stop);
myChart7.on("globalout", goMove);
}
// 自动滚动
function autoMove() {
if (xAxisList != null && xAxisList.length > 0) {
clearInterval(timeOut3);
//自动滚动
timeOut3 = setInterval(() => {
if (option.dataZoom[0].endValue === xAxisList.length) {
option.dataZoom[0].endValue = 6;
option.dataZoom[0].startValue = 0;
} else {
option.dataZoom[0].endValue = option.dataZoom[0].endValue + 1;
option.dataZoom[0].startValue = option.dataZoom[0].startValue + 1;
}
myChart7.setOption(option, true);
}, 4000);
}
}
//停止滚动
function stop() {
clearInterval(timeOut3);
}
//继续滚动
function goMove() {
autoMove();
}
// echarts移入事件
myChart7.getZr().on("mousemove", (param) => {
let pointInPixel = [param.offsetX, param.offsetY];
if (myChart7.containPixel("grid", pointInPixel)) {
myChart7.getZr().setCursorStyle("pointer");
} else {
myChart7.getZr().setCursorStyle("default");
}
});
// echarts点击事件
myChart7.getZr().off("click");
myChart7.getZr().on("click", function (params) {
let pointInPixel = [params.offsetX, params.offsetY];
let name;
if (myChart7.containPixel("grid", pointInPixel)) {
let xIndex = myChart7.convertFromPixel(
{ seriesIndex: 0 },
pointInPixel
)[0];
let handleIndex = Number(xIndex);
let op = myChart7.getOption();
name = op.xAxis[0].data[handleIndex];
}
let classDate = $("#classDate").val();
openClass(classType, name, classDate);
});
window.addEventListener("resize", function () {
myChart7.resize();
});
}
/*人员统计echarts图*/
function initEchartsSix(list) {
let fontSize = "16";
let data = [];
let totalNum = 0;
if (list && list.length > 0) {
$.each(list, function (index, item) {
data.push({
value: item.num,
name: item.personTypeName,
code: item.personType,
});
totalNum += item.num;
});
} else {
data = [
{ value: 0, name: "班组负责人", code: "0900101" },
{ value: 0, name: "班组安全员", code: "0900102" },
{ value: 0, name: "班组技术员", code: "0900103" },
{ value: 0, name: "副班长", code: "0900104" },
{ value: 0, name: "特种作业人员", code: "0900106" },
{ value: 0, name: "一般作业人员", code: "0900107" },
{ value: 0, name: "其他技术人员", code: "0900108" },
];
}
let option = {
backgroundColor: "transparent",
tooltip: {
trigger: "item",
axisPointer: {
type: "shadow",
},
backgroundColor: "rgba(0, 0, 0, 0.63)", //设置背景颜色
textStyle: {
color: "#fff",
fontFamily: "Alibaba PuHuiTi R",
},
borderColor: "rgba(255,255,255, .5)",
},
color: [
"#20FF51",
"#00E0FF",
"#e5d11f",
"#6988F8",
"#0E5FFF",
"#2DE1FD",
"#8221F1",
],
title: [
{
left: "85%",
top: "3%",
textAlign: "center",
text: "{a|" + totalNum + "}{c|人}",
textStyle: {
fontSize: 14,
rich: {
a: {
fontSize: 16,
color: "#fff",
fontFamily: "Alibaba PuHuiTi R",
},
c: {
fontSize: 16,
color: "#fff",
fontFamily: "Alibaba PuHuiTi R",
},
},
},
},
{
left: "52%",
top: "0%",
subtext: "当日站班会人数:",
subtextStyle: {
fontSize: 16,
color: ["#fff"],
fontFamily: "Alibaba PuHuiTi R",
},
},
],
legend: {
show: true,
right: "5%",
top: "middle",
type: "scroll",
orient: "vertical",
textStyle: {
color: "#fff",
fontSize: fontSize,
fontFamily: "Alibaba PuHuiTi R",
},
itemWidth: 15,
formatter: function (name) {
for (let i = 0; i < data.length; i++) {
if (data[i].name === name) {
return name + "" + data[i].value + "人";
}
}
},
},
series: [
{
name: "人员统计",
type: "pie",
clockwise: false, //饼图的扇区是否是顺时针排布
minAngle: 20, //最小的扇区角度0 ~ 360
center: ["28%", "50%"], //饼图的中心(圆心)坐标
radius: [54, 96], //饼图的半径
avoidLabelOverlap: true, ////是否启用防止标签重叠
itemStyle: {
//图形样式
normal: {
borderColor: "#1e2239",
borderWidth: 1.5,
},
},
label: {
//标签的位置
normal: {
show: true,
position: "inside", //标签的位置
formatter: "{d}%",
textStyle: {
color: "#fff",
fontFamily: "Alibaba PuHuiTi R",
},
},
emphasis: {
show: true,
textStyle: {
fontWeight: "bold",
},
},
},
data: data,
},
{
name: "",
type: "pie",
clockwise: false,
silent: true,
minAngle: 20, //最小的扇区角度0 ~ 360
center: ["28%", "50%"], //饼图的中心(圆心)坐标
radius: [0, 49], //饼图的半径
itemStyle: {
//图形样式
normal: {
borderColor: "#1e2239",
borderWidth: 1.5,
opacity: 0.21,
},
},
label: {
//标签的位置
normal: {
show: false,
},
},
data: data,
},
],
};
myChart8.setOption(option, true);
myChart8.off("click").on("click", function (params) {
let personnelType = params.data.code;
openPersonnelStatistics(personnelType);
});
window.addEventListener("resize", function () {
myChart8.resize();
});
}
/* 周风险-历史记录 echarts */
function initEchartsNine(nameList, valueList, valueList2) {
let fontSize = "14",
fontFamily = "Alibaba PuHuiTi R",
fontColor = "#fff";
let rawData = [];
const color = [
"#FF5D6D",
"#F9770F",
"#FFE922",
"#32F474",
"#3DD1F9",
"#FFAD05",
]; //2个以上的series就需要用到color数组
$.each(nameList, function (index, item) {
let childData = [];
childData.push(item);
childData.push(valueList[index]);
childData.push(valueList2[index]);
rawData.push(childData);
});
rawData = rawData.reverse();
function calculateMA(type, data) {
let result = [];
for (var i = 0, len = data.length; i < len; i++) {
if (type == 1) {
result.push(data[i][0]);
} else if (type == 2) {
result.push(data[i][1]);
}
}
return result;
}
let dates = rawData.map(function (item) {
return item[0];
});
let data = rawData.map(function (item) {
return [+item[1], +item[2]];
});
let option = {
backgroundColor: "transparent",
color: color,
legend: {
data: ["二级", "三级"],
inactiveColor: "#777",
right: 5,
textStyle: {
color: "#fff",
fontFamily: fontFamily,
fontSize: fontSize,
},
},
grid: {
left: "1%",
right: "1%",
top: "20%",
bottom: "2%",
containLabel: true,
},
tooltip: {
trigger: "axis",
axisPointer: {
animation: false,
type: "cross",
lineStyle: {
color: "#376df4",
width: 2,
opacity: 1,
},
},
backgroundColor: "rgba(0, 0, 0, 0.63)", //设置背景颜色
textStyle: {
color: fontColor,
fontFamily: fontFamily,
fontSize: fontSize,
},
borderColor: "rgba(255,255,255, .5)",
},
xAxis: {
show: false,
type: "category",
data: dates,
axisLine: {
lineStyle: {
color: "#8392A5",
},
},
},
yAxis: {
type: "value",
axisLabel: {
color: fontColor,
fontFamily: fontFamily,
fontSize: fontSize,
},
axisLine: {
show: false,
},
splitLine: {
show: true,
lineStyle: {
color: "#063374",
type: "dashed",
},
},
},
animation: false,
series: [
{
name: "二级",
type: "line",
data: calculateMA(1, data),
smooth: true,
showSymbol: false,
lineStyle: {
normal: {
width: 1,
},
},
},
{
name: "三级",
type: "line",
data: calculateMA(2, data),
smooth: true,
showSymbol: false,
lineStyle: {
normal: {
width: 1,
},
},
},
],
};
myChart9.setOption(option, true);
window.addEventListener("resize", function () {
myChart9.resize();
});
}
/* 日风险-历史记录 echarts */
function initEchartsTen(nameList, valueList, valueList2) {
let fontSize = "14",
fontFamily = "Alibaba PuHuiTi R",
fontColor = "#fff";
let rawData = [];
const color = ["#3DD1F9", "#32F474", "#FFAD05"]; //2个以上的series就需要用到color数组
$.each(nameList, function (index, item) {
let childData = [];
childData.push(item);
childData.push(valueList[index]);
childData.push(valueList2[index]);
rawData.push(childData);
});
rawData = rawData.reverse();
function calculateMA(type, data) {
let result = [];
for (var i = 0, len = data.length; i < len; i++) {
if (type == 1) {
result.push(data[i][0]);
} else if (type == 2) {
result.push(data[i][1]);
}
}
return result;
}
let dates = rawData.map(function (item) {
return item[0];
});
let data = rawData.map(function (item) {
return [+item[1], +item[2]];
});
let option = {
backgroundColor: "transparent",
color: color,
legend: {
data: ["计划数", "已执行"],
inactiveColor: "#777",
right: 5,
textStyle: {
color: "#fff",
fontFamily: fontFamily,
},
},
grid: {
left: "1%",
right: "1%",
top: "20%",
bottom: "2%",
containLabel: true,
},
tooltip: {
trigger: "axis",
axisPointer: {
animation: false,
type: "cross",
lineStyle: {
color: "#376df4",
width: 2,
opacity: 1,
},
},
backgroundColor: "rgba(0, 0, 0, 0.63)", //设置背景颜色
textStyle: {
color: fontColor,
fontFamily: fontFamily,
fontSize: fontSize,
},
borderColor: "rgba(255,255,255, .5)",
},
xAxis: {
show: false,
type: "category",
data: dates,
axisLine: {
lineStyle: {
color: "#8392A5",
},
},
},
yAxis: {
type: "value",
axisLabel: {
color: fontColor,
fontFamily: fontFamily,
fontSize: fontSize,
},
axisLine: {
show: false,
},
splitLine: {
show: true,
lineStyle: {
color: "#063374",
type: "dashed",
},
},
},
animation: false,
series: [
{
name: "计划数",
type: "line",
data: calculateMA(1, data),
smooth: true,
showSymbol: false,
lineStyle: {
normal: {
width: 1,
},
},
},
{
name: "已执行",
type: "line",
data: calculateMA(2, data),
smooth: true,
showSymbol: false,
lineStyle: {
normal: {
width: 1,
},
},
},
],
};
/* const backgroundColor = 'transparent';
const color = ['#3DD1F9', '#32F474', '#FFAD05']; //2个以上的series就需要用到color数组
const legend = {
orient: 'horizontal',
icon: 'circle', //图例形状
padding: 0,
top: 2,
right: 5,
itemWidth: 14, //小圆点宽度
itemHeight: 14, // 小圆点高度
itemGap: 21, // 图例每项之间的间隔。[ default: 10 ]横向布局时为水平间隔,纵向布局时为纵向间隔。
textStyle: {
fontSize: 14,
color: '#ffffff',
fontFamily: fontFamily
},
};
const tooltip = {
show: true,
trigger: 'axis',
axisPointer: {
type: 'shadow'
},
backgroundColor: 'rgba(0, 0, 0, 0.63)', //设置背景颜色
textStyle: {
color: fontColor,
fontFamily: fontFamily
},
borderColor: "rgba(255,255,255, .5)",
};
let seriesData = [
{ name: '计划数', data: valueList },
{ name: '已执行', data: valueList2 }
];
const commonConfigFn = (index) => {
return {
type: 'line',
smooth: true,
symbol: 'emptyCircle', //空心小圆点。线条小圆点形状
symbolSize: 8, //小圆点大小
itemStyle: {
//还是小圆点设置
},
label: {
normal: {
show: true,
position: [-2, -13],
formatter: '{c}',
textStyle: {
color: fontColor,
fontSize: '13px',
fontFamily: fontFamily
}
}
},
lineStyle: {
width: 2, //线条设置
},
areaStyle: {
//填充线条下面的面积区域颜色。areaStyle只是锦上添花
opacity: 0.2,
color: {
type: 'linear',
x: 0,
y: 0,
x2: 0,
y2: 1,
colorStops: [
{
offset: 0,
color: color[index], // 上处的颜色
},
{
offset: 1,
color: 'transparent', // 下处的颜色
},
],
global: false, // 缺省为 false
},
},
};
};
seriesData = seriesData.map((item, index) => ({ ...item, ...commonConfigFn(index) }));
let option = {
backgroundColor,
color,
tooltip,
legend,
grid: {
left: '1%',
right: '1%',
top: '20%',
bottom: '2%',
containLabel: true
},
dataZoom: [{
type: 'inside',
zoomOnMouseWheel: false,
moveOnMouseMove: true,
moveOnMouseWheel: true,
startValue: 0,
endValue: 20,
},],
xAxis: {
show: false, //显示x轴+x轴label文字
type: 'category',
boundaryGap: true, //从Y轴出发这个false很好的
axisLine: {
show: true, //显示x坐标轴轴线
lineStyle: {
color: '#101C4A',
// type: 'dashed'
}
},
axisTick: {
show: false, //不显示x坐标1cm刻度
},
axisLabel: {
color: fontColor, //x轴label文字颜色
fontFamily: fontFamily,
fontSize: fontSize
},
splitLine: {
show: false, //不显示grid竖向分割线
},
data: nameList,
},
yAxis: {
type: 'value',
axisLabel: {
color: fontColor,
fontFamily: fontFamily,
fontSize: fontSize
},
axisLine: {
show: false,
},
splitLine: {
show: true,
lineStyle: {
color: '#063374',
type: 'dashed'
}
},
},
series: seriesData,
}; */
myChart9.setOption(option, true);
window.addEventListener("resize", function () {
myChart9.resize();
});
}
/* 作业票-历史记录 */
function initEchartsEleven(nameList, valueList, valueList2) {
let fontSize = "14",
fontFamily = "Alibaba PuHuiTi R",
fontColor = "#fff";
let option = {
backgroundColor: "transparent",
tooltip: {
show: true,
trigger: "axis",
axisPointer: {
type: "shadow",
},
backgroundColor: "rgba(0, 0, 0, 0.63)", //设置背景颜色
textStyle: {
color: fontColor,
fontFamily: fontFamily,
},
borderColor: "rgba(255,255,255, .5)",
},
legend: {
// icon: 'circle',
data: ["A票", "B票"],
right: 20,
textStyle: {
color: "#fff",
fontSize: fontSize,
fontFamily: fontFamily,
},
itemWidth: 20,
itemHeight: 15,
itemGap: 10,
},
grid: {
left: "3%",
right: "4%",
bottom: "3%",
top: "18%",
containLabel: true,
},
xAxis: [
{
type: "category",
data: nameList,
axisLine: {
show: true,
lineStyle: {
color: "#101C4A",
width: 1,
type: "solid",
},
},
axisTick: {
show: false,
},
axisLabel: {
show: true,
interval: 0, // 强制显示所有标签
textStyle: {
color: "#fff",
fontFamily: fontFamily,
fontSize: fontSize,
},
},
},
],
yAxis: [
{
type: "value",
axisTick: {
show: false,
},
axisLine: {
show: false,
lineStyle: {
color: "#fff",
width: 1,
type: "solid",
},
},
splitLine: {
lineStyle: {
color: "#063374",
type: "dashed",
},
},
axisLabel: {
show: true,
interval: 0, // 强制显示所有标签
textStyle: {
color: "#fff",
fontFamily: fontFamily,
fontSize: fontSize,
},
},
},
],
series: [
{
name: "A票",
type: "bar",
data: valueList,
barWidth: 10, //柱子宽度
barGap: 1, //柱子之间间距
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: "#59A5FF",
},
{
offset: 1,
color: "#36EBCA",
},
]),
opacity: 1,
},
},
label: {
normal: {
show: true,
position: [-2, -13],
formatter: "{c}",
textStyle: {
color: fontColor,
fontSize: "13px",
fontFamily: fontFamily,
},
},
},
},
{
name: "B票",
type: "bar",
data: valueList2,
barWidth: 10,
barGap: 1,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: "#FFFB99",
},
{
offset: 1,
color: "#A4FFFA",
},
]),
opacity: 1,
},
},
label: {
normal: {
show: true,
position: [-2, -13],
formatter: "{c}",
textStyle: {
color: fontColor,
fontSize: "13px",
fontFamily: fontFamily,
},
},
},
},
],
};
myChart10.setOption(option, true);
window.addEventListener("resize", function () {
myChart10.resize();
});
}