diff --git a/packages/rath-client/public/locales/en-US.json b/packages/rath-client/public/locales/en-US.json
index 1019f595..afae27b3 100644
--- a/packages/rath-client/public/locales/en-US.json
+++ b/packages/rath-client/public/locales/en-US.json
@@ -133,11 +133,17 @@
"methods": {
"dropNull": "drop null records",
"useMode": "replace null with mode",
- "simpleClean": "simple cleaning",
+ "simpleClean": "use zero or null",
"none": "none(use original data)"
},
"tip": "Remember to adjust the fields' types and cleaning strategy before analysis.",
"recordCount": "Number of records {count}",
+ "rowsInViews": "Origin: {origin} rows / Select: ({select}) / Clean: ({clean}) rows",
+ "selection": {
+ "title": "Fast Selection Config",
+ "desc": "Filter based on quantiles to get the main part of your data.",
+ "syncMode": "sync mode"
+ },
"upload": {
"title": "Upload Your own dataset",
"fileTypes": "csv, json are supportted.",
diff --git a/packages/rath-client/public/locales/zh-CN.json b/packages/rath-client/public/locales/zh-CN.json
index ec1437e6..d57bcb70 100644
--- a/packages/rath-client/public/locales/zh-CN.json
+++ b/packages/rath-client/public/locales/zh-CN.json
@@ -133,11 +133,17 @@
"methods": {
"dropNull": "删除空值记录",
"useMode": "使用众数代替空",
- "simpleClean": "简单的替换",
+ "simpleClean": "替换为0或null",
"none": "无(使用原始数据)"
},
"tip": "记得在开始分析前先调整数据的清洗策略并配置字段的属性",
"recordCount": "记录数 {count}",
+ "rowsInViews": "原始数据: {origin} 行 / 筛选后: {select} 行 / 清洗后: {clean} 行",
+ "selection": {
+ "title": "快速数据筛选",
+ "desc": "基于数据中的分位数进行快速筛选",
+ "syncMode": "分位数同步"
+ },
"upload": {
"title": "连接你的数据集,根据需求调整以下配置",
"fileTypes": "支持csv, json文件",
diff --git a/packages/rath-client/src/pages/dataSource/fastSelection/index.tsx b/packages/rath-client/src/pages/dataSource/fastSelection/index.tsx
index bd85ae1a..4f05482d 100644
--- a/packages/rath-client/src/pages/dataSource/fastSelection/index.tsx
+++ b/packages/rath-client/src/pages/dataSource/fastSelection/index.tsx
@@ -1,6 +1,7 @@
-import { observer } from 'mobx-react-lite';
-import { DefaultButton, Modal, PrimaryButton, Slider, Stack, Toggle } from 'office-ui-fabric-react';
import React, { useCallback, useEffect, useState } from 'react';
+import { observer } from 'mobx-react-lite';
+import { DefaultButton, Label, Modal, PrimaryButton, Slider, Stack, Toggle } from 'office-ui-fabric-react';
+import intl from 'react-intl-universal';
import { useGlobalStore } from '../../../store';
const FastSelection: React.FC = () => {
@@ -30,9 +31,9 @@ const FastSelection: React.FC = () => {
dataSourceStore.setShowFastSelection(false);
}}>
-
Fast Selection Config
-
Filter based on quantiles to get the main part of your data.
-
{intl.get('dataSource.selection.title')}
+ {intl.get('dataSource.selection.desc')}
+ {
setSyncMode(Boolean(checked))
}}
@@ -53,14 +54,14 @@ const FastSelection: React.FC = () => {
/>)
}
- {
+ {
dataSourceStore.createBatchFilterByQts(
meaFields.map(m => m.fid),
ranges
)
dataSourceStore.setShowFastSelection(false);
}} />
- {
+ {
dataSourceStore.setShowFastSelection(false);
}} />
diff --git a/packages/rath-client/src/pages/dataSource/index.tsx b/packages/rath-client/src/pages/dataSource/index.tsx
index 5f43396a..c28ef016 100644
--- a/packages/rath-client/src/pages/dataSource/index.tsx
+++ b/packages/rath-client/src/pages/dataSource/index.tsx
@@ -257,7 +257,7 @@ const DataSourceBoard: React.FC = (props) => {
{intl.get('dataSource.recordCount', { count: cleanedData.length })}
- Origin: ({rawData.length}) rows / Selected: ({ filteredData.length }) / Clean: ({cleanedData.length}) rows
+ {intl.get('dataSource.rowsInViews', { origin: rawData.length, select: filteredData.length, clean: cleanedData.length })}
{
const { discoveryMainStore } = useGlobalStore();
const {
fieldMetas,
- dataSource,
+ dataSource
} = discoveryMainStore;
useEffect(() => {
if (dataSource.length > 1e5) {
discoveryMainStore.updateSettings('vizAlgo', 'lite')
}
- discoveryMainStore.initAssociate();
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [fieldMetas, dataSource])
diff --git a/packages/rath-client/src/queries/distribution/bot.ts b/packages/rath-client/src/queries/distribution/bot.ts
index 20cec90f..bcc64a7d 100644
--- a/packages/rath-client/src/queries/distribution/bot.ts
+++ b/packages/rath-client/src/queries/distribution/bot.ts
@@ -60,9 +60,7 @@ export function autoMark (fields: IFieldMeta[], statFields: IFieldMeta[]= [], or
} else if (isSetEqual(semantics, ['quantitative', 'quantitative'])) {
return 'area'
} else if (isSetEqual(semantics, ['temporal', 'quantitative'])) {
- const temporalField = semanticFields.find(s => s.semanticType === 'temporal')!;
- if (temporalField.features.unique > 16) return 'line'
- return 'bar'
+ return 'line'
}
} else {
if (isSetEqual(semantics, ['nominal', 'nominal'])) {
diff --git a/packages/rath-client/src/store/discovery/mainStore.ts b/packages/rath-client/src/store/discovery/mainStore.ts
index f5a925a1..863f2a6a 100644
--- a/packages/rath-client/src/store/discovery/mainStore.ts
+++ b/packages/rath-client/src/store/discovery/mainStore.ts
@@ -68,6 +68,8 @@ export class DiscoveryMainStore {
!autoPatt && this.initRenderViews('featViews');
autoFilter && this.filterAssociate();
!autoFilter && this.initRenderViews('filterViews');
+ } else {
+ autoPatt && this.initAssociate();
}
}))
@@ -99,7 +101,7 @@ export class DiscoveryMainStore {
public setShowMiniFloatView (show: boolean) {
this.showMiniFloatView = show;
}
- public hasMainView () {
+ public get hasMainView () {
return this.mainView !== null
}
public get dataSource () {