Change to distanceLimit for wordset.

This commit is contained in:
Haifeng Luo 2022-04-11 00:05:17 +08:00
parent 2d763e2137
commit 268515e83f
8 changed files with 40 additions and 31 deletions

View File

@ -12,9 +12,9 @@ type Wordset struct {
Name string `xorm:"varchar(100) notnull pk" json:"name"`
CreatedTime string `xorm:"varchar(100)" json:"createdTime"`
DisplayName string `xorm:"varchar(100)" json:"displayName"`
Distance int `json:"distance"`
Vectorset string `xorm:"varchar(100)" json:"vectorset"`
DisplayName string `xorm:"varchar(100)" json:"displayName"`
DistanceLimit int `json:"distanceLimit"`
Vectorset string `xorm:"varchar(100)" json:"vectorset"`
Vectors []*Vector `xorm:"mediumtext" json:"vectors"`
}

View File

@ -78,6 +78,8 @@ func generateGraph(vectors []*Vector, distanceLimit int) *Graph {
//vectors = vectors[:100]
g := newGraph()
g.Nodes = []*Node{}
g.Links = []*Link{}
nodeWeightMap := map[string]int{}
for i := 0; i < len(vectors); i++ {

View File

@ -8,8 +8,15 @@ import (
func uploadVectorNames(owner string, fileId string) bool {
table := xlsx.ReadXlsxFile(fileId)
vectorMap := map[string]int{}
vectors := []*Vector{}
for _, line := range table {
if _, ok := vectorMap[line[0]]; ok {
continue
} else {
vectorMap[line[0]] = 1
}
vector := &Vector{
Name: line[0],
Data: []float64{},
@ -18,12 +25,12 @@ func uploadVectorNames(owner string, fileId string) bool {
}
wordset := &Wordset{
Owner: owner,
Name: "word",
CreatedTime: util.GetCurrentTime(),
DisplayName: "word",
Distance: 100,
Vectors: vectors,
Owner: owner,
Name: "word",
CreatedTime: util.GetCurrentTime(),
DisplayName: "word",
DistanceLimit: 14,
Vectors: vectors,
}
return AddWordset(wordset)
}

View File

@ -5,5 +5,5 @@ import "testing"
func TestUploadVectorNames(t *testing.T) {
InitConfig()
uploadVectorNames("admin", "../../tmpFiles/【最原始版】词汇表—单行—去重后")
uploadVectorNames("admin", "../../tmpFiles/【预处理版】词汇表 - 副本")
}

View File

@ -1,5 +1,5 @@
import React from "react";
import {Button, Card, Col, Input, Row, Select} from 'antd';
import {Button, Card, Col, Input, InputNumber, Row, Select} from 'antd';
import * as WordsetBackend from "./backend/WordsetBackend";
import * as Setting from "./Setting";
import i18next from "i18next";
@ -131,16 +131,16 @@ class WordsetEditPage extends React.Component {
<Input value={`${Setting.getPercentage(allWords === 0 ? 0 : validWords / allWords)}% (${validWords} / ${allWords})`} />
</Col>
</Row>
{/*<Row style={{marginTop: '20px'}} >*/}
{/* <Col style={{marginTop: '5px'}} span={(Setting.isMobile()) ? 22 : 2}>*/}
{/* {i18next.t("wordset:Distance")}:*/}
{/* </Col>*/}
{/* <Col span={22} >*/}
{/* <InputNumber value={this.state.wordset.distance} onChange={value => {*/}
{/* this.updateWordsetField('distance', value);*/}
{/* }} />*/}
{/* </Col>*/}
{/*</Row>*/}
<Row style={{marginTop: '20px'}} >
<Col style={{marginTop: '5px'}} span={(Setting.isMobile()) ? 22 : 2}>
{i18next.t("wordset:Distance limit")}:
</Col>
<Col span={22} >
<InputNumber value={this.state.wordset.distanceLimit} onChange={value => {
this.updateWordsetField('distanceLimit', value);
}} />
</Col>
</Row>
<Row style={{marginTop: '20px'}} >
<Col style={{marginTop: '5px'}} span={(Setting.isMobile()) ? 22 : 2}>
{i18next.t("wordset:Words")}:

View File

@ -34,7 +34,7 @@ class WordsetListPage extends React.Component {
name: `wordset_${this.state.wordsets.length}`,
createdTime: moment().format(),
displayName: `Wordset ${this.state.wordsets.length}`,
distance: 100,
distanceLimit: 14,
vectorset: "wordVector_utf-8",
vectors: [],
}
@ -92,13 +92,6 @@ class WordsetListPage extends React.Component {
width: '200px',
sorter: (a, b) => a.displayName.localeCompare(b.displayName),
},
// {
// title: i18next.t("wordset:Distance"),
// dataIndex: 'distance',
// key: 'distance',
// width: '120px',
// sorter: (a, b) => a.distance - b.distance,
// },
{
title: i18next.t("wordset:Words"),
dataIndex: 'vectors',
@ -154,6 +147,13 @@ class WordsetListPage extends React.Component {
return `${Setting.getPercentage(allWords === 0 ? 0 : validWords / allWords)}% (${validWords} / ${allWords})`;
}
},
{
title: i18next.t("wordset:Distance limit"),
dataIndex: 'distanceLimit',
key: 'distanceLimit',
width: '120px',
sorter: (a, b) => a.distanceLimit - b.distanceLimit,
},
{
title: i18next.t("general:Action"),
dataIndex: 'action',

View File

@ -33,7 +33,7 @@
},
"wordset": {
"All words": "All words",
"Distance": "Distance",
"Distance limit": "Distance limit",
"Edit Wordset": "Edit Wordset",
"Match": "Match",
"Matched": "Matched",

View File

@ -33,7 +33,7 @@
},
"wordset": {
"All words": "所有词汇",
"Distance": "距离",
"Distance limit": "距离上限",
"Edit Wordset": "编辑词汇集",
"Match": "匹配",
"Matched": "匹配度",