|
|
@@ -37,12 +37,9 @@
|
|
|
</div>
|
|
|
|
|
|
<el-dialog title="新建统计分析配置" v-model="analysisVisible" width="50%">
|
|
|
- <el-form label-width="150px">
|
|
|
- <el-form-item label="配置拥有字段数:" >
|
|
|
- {{selectConfigLen}}
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="分析方法" required>
|
|
|
- <el-select v-model="analysisType" placeholder="分析方法" class="handle-select mr10" @change="changeMethodMsg">
|
|
|
+ <el-form label-width="150px" label-position="left">
|
|
|
+ <el-form-item label="分析方法:" required>
|
|
|
+ <el-select v-model="analysisType" placeholder="请选择" class="handle-select mr10" @change="changeMethodMsg">
|
|
|
<el-option key="1" label="数据分布" value="DATA_DISTRIBUTION"></el-option>
|
|
|
<el-option key="2" label="散点图" value="SCATTER_PLOT"></el-option>
|
|
|
<el-option key="3" label="数据统计" value="STATISTICS"></el-option>
|
|
|
@@ -50,22 +47,22 @@
|
|
|
<el-option key="5" label="皮尔森相关系数" value="PEARSON"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-alert type="info" show-icon style="height: 40px;">{{methodMsg}}</el-alert>
|
|
|
- <el-form-item label="方法和字段要求" required>
|
|
|
- <text>皮尔森相关系数需要两个int/double字段,散点图可以传入2-3个字段,其他的方法只需一个字段。除了数据分布可以传入string字段,其他方法请传入int/double字段</text>
|
|
|
+ <el-alert type="info" show-icon style="margin-bottom: 20px">{{methodMsg}}</el-alert>
|
|
|
+ <el-form-item label="配置拥有字段数:" >
|
|
|
+ {{selectConfigLen}}
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="配置拥有字段:">
|
|
|
+ <el-table :data="selectConfigCol" border class="table" header-cell-class-name="table-header" size="small">
|
|
|
+ <el-table-column label="字段名">
|
|
|
+ <template #default="scope"><span>{{scope.row}}</span></template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="配置拥有字段" required>
|
|
|
- <el-table :data="selectConfigCol" border class="table" header-cell-class-name="table-header" >
|
|
|
- <el-table-column label="字段名">
|
|
|
- <template #default="scope"><span>{{scope.row}}</span></template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
- </el-form-item>
|
|
|
</el-form>
|
|
|
<template #footer>
|
|
|
<span class="dialog-footer">
|
|
|
- <el-button @click="analysisVisible = false">取 消</el-button>
|
|
|
- <el-button type="primary" @click="analysis">确 定</el-button>
|
|
|
+ <el-button @click="analysisVisible = false" size="medium">再想想</el-button>
|
|
|
+ <el-button type="primary" @click="analysis" size="medium">确定</el-button>
|
|
|
</span>
|
|
|
</template>
|
|
|
</el-dialog>
|
|
|
@@ -73,15 +70,14 @@
|
|
|
<el-dialog
|
|
|
v-model="pipelineVisible"
|
|
|
title="新建流水线"
|
|
|
- width="30%"
|
|
|
:before-close="handleClose"
|
|
|
>
|
|
|
- <el-form width="300px">
|
|
|
- <el-form-item label="流水线名称" required>
|
|
|
+ <el-form label-position="left" label-width="120px">
|
|
|
+ <el-form-item label="流水线名称:" required>
|
|
|
<el-input v-model="pplForm.pipelineName"></el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="分析方法" required>
|
|
|
- <el-select v-model="pplForm.func" placeholder="分析方法" class="handle-select mr10">
|
|
|
+ <el-form-item label="分析方法:" required>
|
|
|
+ <el-select v-model="pplForm.func" placeholder="请选择" class="handle-select mr10" @change="changeMethodMsg2">
|
|
|
<el-option key="1" label="数据分布" value="DATA_DISTRIBUTION"></el-option>
|
|
|
<el-option key="2" label="散点图" value="SCATTER_PLOT"></el-option>
|
|
|
<el-option key="3" label="数据统计" value="STATISTICS"></el-option>
|
|
|
@@ -89,14 +85,15 @@
|
|
|
<el-option key="5" label="皮尔森相关系数" value="PEARSON"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
+ <el-alert type="info" show-icon style="margin-bottom: 20px">{{methodMsg2}}</el-alert>
|
|
|
<el-form-item label="选中列:" >
|
|
|
{{pplForm.chosenColumns}}
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
<template #footer>
|
|
|
<span class="dialog-footer">
|
|
|
- <el-button @click="pipelineVisible = false">取消</el-button>
|
|
|
- <el-button type="primary" @click="pipeline()" style="margin-left: 10px"> 新建流水线 </el-button>
|
|
|
+ <el-button @click="pipelineVisible = false" size="medium">再想想</el-button>
|
|
|
+ <el-button type="primary" @click="pipeline()" style="margin-left: 10px" size="medium">确定</el-button>
|
|
|
</span>
|
|
|
</template>
|
|
|
</el-dialog>
|
|
|
@@ -131,20 +128,36 @@ export default {
|
|
|
let analysisType = ref();
|
|
|
let selectConfigCol = ref([]);
|
|
|
let methodMsg=ref("不同方法仅适用于特定特征字段");
|
|
|
+ let methodMsg2=ref("不同方法仅适用于特定特征字段");
|
|
|
const router = useRouter();
|
|
|
|
|
|
const changeMethodMsg=()=>{
|
|
|
let value = analysisType.value;
|
|
|
if(value==='DATA_DISTRIBUTION'){
|
|
|
- methodMsg.value="数据分布请传入1个字段,类型不限"
|
|
|
+ methodMsg.value="请传入 1 个字段,类型不限(int/double/string)"
|
|
|
+ }else if(value==='SCATTER_PLOT'){
|
|
|
+ methodMsg.value="请传入 2-3 个 int/double 字段"
|
|
|
+ }else if(value==='STATISTICS'){
|
|
|
+ methodMsg.value="请传入 1 个 int/double 字段"
|
|
|
+ }else if(value==='SKEWNESS_KURTOSIS'){
|
|
|
+ methodMsg.value="请传入 1 个 int/double 字段"
|
|
|
+ }else if(value==='PEARSON'){
|
|
|
+ methodMsg.value="请传入2个 int/double 字段"
|
|
|
+ }
|
|
|
+ };
|
|
|
+ const changeMethodMsg2=()=>{
|
|
|
+ let value = pplForm.func;
|
|
|
+ if(value==='DATA_DISTRIBUTION'){
|
|
|
+ console.log(1)
|
|
|
+ methodMsg2.value="请传入 1 个字段,类型不限(int/double/string)"
|
|
|
}else if(value==='SCATTER_PLOT'){
|
|
|
- methodMsg.value="散点图可以传入2个int/double字段"
|
|
|
+ methodMsg2.value="请传入 2-3 个 int/double 字段"
|
|
|
}else if(value==='STATISTICS'){
|
|
|
- methodMsg.value="请传入1个int/double字段"
|
|
|
+ methodMsg2.value="请传入 1 个 int/double 字段"
|
|
|
}else if(value==='SKEWNESS_KURTOSIS'){
|
|
|
- methodMsg.value="请传入1个int/double字段"
|
|
|
+ methodMsg2.value="请传入 1 个 int/double 字段"
|
|
|
}else if(value==='PEARSON'){
|
|
|
- methodMsg.value="请传入2个int/double字段"
|
|
|
+ methodMsg2.value="请传入2个 int/double 字段"
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -177,13 +190,23 @@ export default {
|
|
|
if (res.msg === '成功'){
|
|
|
pipelineVisible.value = false
|
|
|
ElMessageBox({
|
|
|
- title: '模型训练',
|
|
|
- message: `加入流水线成功`,
|
|
|
- confirmButtonText: '确定',
|
|
|
+ title: '模型训练结果',
|
|
|
+ message: `加入流水线成功!`,
|
|
|
+ showCancelButton: true,
|
|
|
+ confirmButtonText: '查看流水线',
|
|
|
+ cancelButtonText: '留在本页面',
|
|
|
+ beforeClose: (action, instance, done) => {
|
|
|
+ if (action === 'confirm') {
|
|
|
+ router.push("/analysisPipeline");
|
|
|
+ done()
|
|
|
+ } else {
|
|
|
+ done()
|
|
|
+ }
|
|
|
+ },
|
|
|
})
|
|
|
}
|
|
|
else{
|
|
|
- ElMessage.error("预测失败!:"+res.msg);
|
|
|
+ ElMessage.error("流水线生成失败!:"+res.msg);
|
|
|
}
|
|
|
})
|
|
|
}
|
|
|
@@ -244,38 +267,19 @@ export default {
|
|
|
console.log(payload)
|
|
|
if (payload.func !== undefined){
|
|
|
analysisVisible.value = false;
|
|
|
- ElMessageBox( {
|
|
|
- title: "确定要分析吗?",
|
|
|
- showCancelButton: true,
|
|
|
- confirmButtonText: '确定',
|
|
|
- cancelButtonText: '取消',
|
|
|
- beforeClose: (action, instance, done) => {
|
|
|
- if (action === 'confirm') {
|
|
|
- instance.confirmButtonLoading = true
|
|
|
- instance.confirmButtonText = '分析中...'
|
|
|
- visualize(payload).then(res => {
|
|
|
- instance.confirmButtonLoading = false
|
|
|
- if (res.msg === '成功'){
|
|
|
- ElMessageBox({
|
|
|
- title: '数据分析',
|
|
|
- message: `数据分析成功`,
|
|
|
- confirmButtonText: '确定',
|
|
|
- })
|
|
|
- getPage();
|
|
|
- done()
|
|
|
- }
|
|
|
- else{
|
|
|
- ElMessage.error("数据分析失败!:"+res.msg);
|
|
|
- done()
|
|
|
- }
|
|
|
- }).catch(err=>{
|
|
|
- console.log(err)
|
|
|
- });
|
|
|
- } else {
|
|
|
- done()
|
|
|
- }
|
|
|
- },
|
|
|
- })
|
|
|
+ ElMessage.info("开始数据分析");
|
|
|
+ visualize(payload).then(res => {
|
|
|
+ instance.confirmButtonLoading = false
|
|
|
+ if (res.msg === '成功'){
|
|
|
+ ElMessage.success("数据分析成功!");
|
|
|
+ getPage();
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ ElMessage.error("数据分析失败!:"+res.msg);
|
|
|
+ }
|
|
|
+ }).catch(err=>{
|
|
|
+ console.log(err)
|
|
|
+ });
|
|
|
}
|
|
|
else {
|
|
|
alert("请选择数据分析方法!");
|
|
|
@@ -292,6 +296,7 @@ export default {
|
|
|
analysisType,
|
|
|
selectConfigCol,
|
|
|
methodMsg,
|
|
|
+ methodMsg2,
|
|
|
selectConfigId,
|
|
|
router,
|
|
|
pplForm,
|
|
|
@@ -302,6 +307,7 @@ export default {
|
|
|
startAnalysis,
|
|
|
analysis,
|
|
|
changeMethodMsg,
|
|
|
+ changeMethodMsg2,
|
|
|
handlePipeline,
|
|
|
pipeline,
|
|
|
};
|
|
|
@@ -344,4 +350,4 @@ export default {
|
|
|
width: 40px;
|
|
|
height: 40px;
|
|
|
}
|
|
|
-</style>
|
|
|
+</style>
|