Переглянути джерело

添加图表的项目提示

Michael Wang 3 роки тому
батько
коміт
f1911897e2

+ 12 - 2
src/features/projectCompareDetail/ProjectCompareDetail2.vue

@@ -102,8 +102,14 @@ const segementsLine = computed(() => {
         type: "shadow",
       },
     },
-    // legend: { data: [{ name: "xx" }, { name: "aa" }] },
-    // legend: {},
+    legend: {
+      type: "scroll",
+      orient: "vertical",
+      right: 10,
+      top: 20,
+      bottom: 20,
+      data: attrCompareData.map((c) => c.projectName || ""),
+    },
     title: {
       text: attrCompareData[0].courseName + "试卷特征量数对比分析",
       left: "50%",
@@ -149,12 +155,14 @@ const segementsLine = computed(() => {
     series: [
       {
         type: "bar",
+        name: attrCompareData[0].projectName,
         stack: "a",
         // eslint-disable-next-line @typescript-eslint/no-unsafe-return
         data: columns.map((v) => attrCompareData[0][v.dataIndex]),
       },
       {
         type: "bar",
+        name: attrCompareData[1].projectName,
         stack: "b",
         // eslint-disable-next-line @typescript-eslint/no-unsafe-return
         data: columns.map((v) => attrCompareData[1][v.dataIndex]),
@@ -163,6 +171,7 @@ const segementsLine = computed(() => {
         ? [
             {
               type: "bar",
+              name: attrCompareData[2].projectName,
               stack: "c",
               // eslint-disable-next-line @typescript-eslint/no-unsafe-return
               data: columns.map((v) => attrCompareData[2][v.dataIndex]),
@@ -173,6 +182,7 @@ const segementsLine = computed(() => {
         ? [
             {
               type: "bar",
+              name: attrCompareData[3].projectName,
               stack: "c",
               // eslint-disable-next-line @typescript-eslint/no-unsafe-return
               data: columns.map((v) => attrCompareData[3][v.dataIndex]),

+ 30 - 0
src/features/projectCompareDetail/ScoreRateCompare.vue

@@ -169,6 +169,20 @@ async function fetchData() {
 
 function segementsLine() {
   return {
+    tooltip: {
+      trigger: "axis",
+      axisPointer: {
+        type: "shadow",
+      },
+    },
+    legend: {
+      type: "scroll",
+      orient: "vertical",
+      right: 10,
+      top: 20,
+      bottom: 20,
+      data: courses.map((c) => c.projectName || ""),
+    },
     xAxis: {
       type: "category",
       data: courses[0].segements.map((v) => v[0]),
@@ -178,6 +192,7 @@ function segementsLine() {
     },
     series: courses.map((course) => ({
       data: course.segements.map((v) => v[2]),
+      name: course.projectName,
       type: "line",
       smooth: true,
     })),
@@ -272,6 +287,20 @@ function rangeSegementsLine() {
   console.log(courses);
   if (courses.length < 2) return;
   return {
+    tooltip: {
+      trigger: "axis",
+      axisPointer: {
+        type: "shadow",
+      },
+    },
+    legend: {
+      type: "scroll",
+      orient: "vertical",
+      right: 10,
+      top: 20,
+      bottom: 20,
+      data: courses.map((c) => c.projectName || ""),
+    },
     title: {
       text: courses[0].courseName + "科目分数线分组的频数分布对比分析",
       left: "50%",
@@ -292,6 +321,7 @@ function rangeSegementsLine() {
     },
     series: courses.map((course) => ({
       data: course.rangeSegements.map((v) => v[1]),
+      name: course.projectName,
       type: "line",
       smooth: true,
     })),

+ 2 - 2
src/features/projectCompareManagement/ProjectCompareManagement.vue

@@ -67,8 +67,8 @@ store.currentLocation = "项目管理 / 关联分析";
 
 let rootOrgId = $ref(undefined as unknown as number);
 
-let projectIds: number[] = $ref([]);
-let contrastProjectId: number = $ref();
+let projectIds: number[] = $ref([4, 5]);
+let contrastProjectId: number = $ref(4);
 
 let data = $ref<SASPaper[]>([]);
 let pageSize = $ref(10);

+ 1 - 1
src/types/index.ts

@@ -131,7 +131,7 @@ export interface SASPaper {
   paperId: number;
   paperName: string;
   paperType: string;
-  // projectName?: string;
+  projectName?: string;
   projectId: number;
   questionCount: number;
   reliability1: number;