|
@@ -6,11 +6,11 @@
|
|
|
<div class="con" style="width: 30%;">
|
|
|
<div>句子</div>
|
|
|
<div v-for="(i,index) in e" :key="index" style="display: flex;align-items: center;">
|
|
|
- <el-tooltip class="item" effect="dark" :content="i.value" placement="top-start">
|
|
|
- <div class="TitTimu" :style="{color:i.value == i.trA? '#409EFF' :'' }">{{ i.value }}</div>
|
|
|
+ <el-tooltip class="item" effect="dark" :content="i.value.join(' ')" placement="top-start">
|
|
|
+ <div class="TitTimu" :style="{color:JSON.stringify(i.value) == JSON.stringify(i.trA)? '#409EFF' :'' }">{{ i.value.join(' ') }}</div>
|
|
|
</el-tooltip>
|
|
|
|
|
|
- <img style="height: 15px;width: 15px;margin-left: 10px;" v-if="i.value == i.trA" src="../../assets/right.png" alt="">
|
|
|
+ <img style="height: 15px;width: 15px;margin-left: 10px;" v-if="JSON.stringify(i.value) == JSON.stringify(i.trA)" src="../../assets/right.png" alt="">
|
|
|
</div>
|
|
|
<div>
|
|
|
正确率
|
|
@@ -23,7 +23,7 @@
|
|
|
</div>
|
|
|
<template v-if="e.find(k => k.isD)">
|
|
|
<span v-for="(i,index) in e" :key="index+'p'">
|
|
|
- <span v-if="i.value == i.trA">{{ i.pro }}%</span>
|
|
|
+ <span v-if="JSON.stringify(i.value) == JSON.stringify(i.trA)">{{ i.pro }}%</span>
|
|
|
</span>
|
|
|
</template>
|
|
|
<span v-else>
|
|
@@ -115,40 +115,49 @@
|
|
|
|
|
|
this.PData.forEach(e => {
|
|
|
JSON.parse(e.works).forEach((k,kin)=>{
|
|
|
- allWork[kin].push(k.chooseSenList.join(''))
|
|
|
+ allWork[kin].push(k.chooseSenList)
|
|
|
})
|
|
|
});
|
|
|
|
|
|
+ console.log('llllllll',JSON.parse(JSON.stringify(allWork)));
|
|
|
+
|
|
|
for (let index = 0; index < allWork.length; index++) {
|
|
|
groups[index] = this.countDuplicates(allWork[index])
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ console.log('groups',JSON.parse(JSON.stringify(groups)));
|
|
|
+
|
|
|
+
|
|
|
// let groups = this.countDuplicates(allWork)
|
|
|
for (let index = 0; index < groups.length; index++) {
|
|
|
for (let kin = 0; kin < groups[index].length; kin++) {
|
|
|
+ console.log('groups[index][kin]',groups[index][kin]);
|
|
|
groups[index][kin].pro = 0
|
|
|
- groups[index][kin].isD = groups[index][kin].value == JSON.parse(this.PData[0].works)[index].rightAnswer.join('')
|
|
|
- groups[index][kin].trA = JSON.parse(this.PData[0].works)[index].rightAnswer.join('')
|
|
|
+
|
|
|
+ groups[index][kin].isD = JSON.stringify(groups[index][kin].value) == JSON.stringify(JSON.parse(this.PData[0].works)[index].rightAnswer)
|
|
|
+ groups[index][kin].trA = JSON.parse(this.PData[0].works)[index].rightAnswer
|
|
|
groups[index][kin].pro = ((groups[index][kin].count / this.PData.length) * 100).toFixed()
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
this.sortData = groups
|
|
|
- // console.log('allWork',allWork);
|
|
|
+ console.log('sortData',sortData);
|
|
|
|
|
|
// console.log('groups',groups);
|
|
|
|
|
|
},
|
|
|
countDuplicates(arr) {
|
|
|
- const countMap = {};
|
|
|
-
|
|
|
- arr.forEach(item => {
|
|
|
- countMap[item] = (countMap[item] || 0) + 1;
|
|
|
+ const map = new Map();
|
|
|
+
|
|
|
+ arr.forEach(subArr => {
|
|
|
+ const key = JSON.stringify(subArr);
|
|
|
+ map.set(key, (map.get(key) || 0) + 1);
|
|
|
});
|
|
|
|
|
|
- return Object.entries(countMap).map(([value, count]) => ({
|
|
|
- value,
|
|
|
+ return Array.from(map).map(([key, count]) => ({
|
|
|
+ value: JSON.parse(key),
|
|
|
count
|
|
|
}));
|
|
|
},
|
|
@@ -237,6 +246,5 @@
|
|
|
white-space: nowrap;
|
|
|
text-overflow: ellipsis;
|
|
|
margin-bottom: 0 !important;
|
|
|
- letter-spacing: 5px;
|
|
|
}
|
|
|
</style>
|