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

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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