Commit 53d30bd7 authored by Lijiao's avatar Lijiao Committed by chicm-ms
Browse files

fix bug of hyper-parameter update (#1139)

parent e4f75024
...@@ -123,7 +123,7 @@ class OpenRow extends React.Component<OpenRowProps, OpenRowState> { ...@@ -123,7 +123,7 @@ class OpenRow extends React.Component<OpenRowProps, OpenRowState> {
<Button <Button
onClick={this.showFormatModal.bind(this, record)} onClick={this.showFormatModal.bind(this, record)}
> >
Copy as python Copy as json
</Button> </Button>
</Row> </Row>
</Row> </Row>
......
...@@ -22,6 +22,7 @@ interface ParaState { ...@@ -22,6 +22,7 @@ interface ParaState {
max: number; // graph color bar limit max: number; // graph color bar limit
min: number; min: number;
sutrialCount: number; // succeed trial numbers for SUC sutrialCount: number; // succeed trial numbers for SUC
succeedRenderCount: number; // all succeed trials number
clickCounts: number; clickCounts: number;
isLoadConfirm: boolean; isLoadConfirm: boolean;
} }
...@@ -68,6 +69,7 @@ class Para extends React.Component<ParaProps, ParaState> { ...@@ -68,6 +69,7 @@ class Para extends React.Component<ParaProps, ParaState> {
min: 0, min: 0,
max: 1, max: 1,
sutrialCount: 10000000, sutrialCount: 10000000,
succeedRenderCount: 10000000,
clickCounts: 1, clickCounts: 1,
isLoadConfirm: false isLoadConfirm: false
}; };
...@@ -76,7 +78,8 @@ class Para extends React.Component<ParaProps, ParaState> { ...@@ -76,7 +78,8 @@ class Para extends React.Component<ParaProps, ParaState> {
getParallelAxis = getParallelAxis =
( (
dimName: Array<string>, parallelAxis: Array<Dimobj>, dimName: Array<string>, parallelAxis: Array<Dimobj>,
accPara: Array<number>, eachTrialParams: Array<string> accPara: Array<number>, eachTrialParams: Array<string>,
lengthofTrials: number
) => { ) => {
// get data for every lines. if dim is choice type, number -> toString() // get data for every lines. if dim is choice type, number -> toString()
const paraYdata: number[][] = []; const paraYdata: number[][] = [];
...@@ -120,7 +123,7 @@ class Para extends React.Component<ParaProps, ParaState> { ...@@ -120,7 +123,7 @@ class Para extends React.Component<ParaProps, ParaState> {
if (swapAxisArr.length >= 2) { if (swapAxisArr.length >= 2) {
this.swapGraph(paraData, swapAxisArr); this.swapGraph(paraData, swapAxisArr);
} }
this.getOption(paraData); this.getOption(paraData, lengthofTrials);
if (this._isMounted === true) { if (this._isMounted === true) {
this.setState(() => ({ paraBack: paraData })); this.setState(() => ({ paraBack: paraData }));
} }
...@@ -248,7 +251,8 @@ class Para extends React.Component<ParaProps, ParaState> { ...@@ -248,7 +251,8 @@ class Para extends React.Component<ParaProps, ParaState> {
this.setState({ this.setState({
paraNodata: 'No data', paraNodata: 'No data',
option: optionOfNull, option: optionOfNull,
sutrialCount: 0 sutrialCount: 0,
succeedRenderCount: 0
}); });
} }
} else { } else {
...@@ -265,7 +269,7 @@ class Para extends React.Component<ParaProps, ParaState> { ...@@ -265,7 +269,7 @@ class Para extends React.Component<ParaProps, ParaState> {
}); });
if (this._isMounted) { if (this._isMounted) {
this.setState({ max: Math.max(...accPara), min: Math.min(...accPara) }, () => { this.setState({ max: Math.max(...accPara), min: Math.min(...accPara) }, () => {
this.getParallelAxis(dimName, parallelAxis, accPara, eachTrialParams); this.getParallelAxis(dimName, parallelAxis, accPara, eachTrialParams, lenOfDataSource);
}); });
} }
} }
...@@ -283,7 +287,7 @@ class Para extends React.Component<ParaProps, ParaState> { ...@@ -283,7 +287,7 @@ class Para extends React.Component<ParaProps, ParaState> {
} }
// deal with response data into pic data // deal with response data into pic data
getOption = (dataObj: ParaObj) => { getOption = (dataObj: ParaObj, lengthofTrials: number) => {
// dataObj [[y1], [y2]... [default metric]] // dataObj [[y1], [y2]... [default metric]]
const { max, min } = this.state; const { max, min } = this.state;
const parallelAxis = dataObj.parallelAxis; const parallelAxis = dataObj.parallelAxis;
...@@ -348,6 +352,7 @@ class Para extends React.Component<ParaProps, ParaState> { ...@@ -348,6 +352,7 @@ class Para extends React.Component<ParaProps, ParaState> {
this.setState(() => ({ this.setState(() => ({
option: optionown, option: optionown,
paraNodata: '', paraNodata: '',
succeedRenderCount: lengthofTrials,
sutrialCount: paralleData.length sutrialCount: paralleData.length
})); }));
} }
...@@ -367,7 +372,7 @@ class Para extends React.Component<ParaProps, ParaState> { ...@@ -367,7 +372,7 @@ class Para extends React.Component<ParaProps, ParaState> {
} }
swapReInit = () => { swapReInit = () => {
const { clickCounts } = this.state; const { clickCounts, succeedRenderCount } = this.state;
const val = clickCounts + 1; const val = clickCounts + 1;
if (this._isMounted) { if (this._isMounted) {
this.setState({ isLoadConfirm: true, clickCounts: val, }); this.setState({ isLoadConfirm: true, clickCounts: val, });
...@@ -419,7 +424,7 @@ class Para extends React.Component<ParaProps, ParaState> { ...@@ -419,7 +424,7 @@ class Para extends React.Component<ParaProps, ParaState> {
paraData[paraItem][dim1] = paraData[paraItem][dim2]; paraData[paraItem][dim1] = paraData[paraItem][dim2];
paraData[paraItem][dim2] = temp; paraData[paraItem][dim2] = temp;
}); });
this.getOption(paraBack); this.getOption(paraBack, succeedRenderCount);
// please wait the data // please wait the data
if (this._isMounted) { if (this._isMounted) {
this.setState(() => ({ this.setState(() => ({
...@@ -503,12 +508,16 @@ class Para extends React.Component<ParaProps, ParaState> { ...@@ -503,12 +508,16 @@ class Para extends React.Component<ParaProps, ParaState> {
return true; return true;
} }
const { sutrialCount, clickCounts } = nextState; const { sutrialCount, clickCounts, succeedRenderCount } = nextState;
const beforeCount = this.state.sutrialCount; const beforeCount = this.state.sutrialCount;
const beforeClickCount = this.state.clickCounts; const beforeClickCount = this.state.clickCounts;
const beforeRealRenderCount = this.state.succeedRenderCount;
if (sutrialCount !== beforeCount) { if (sutrialCount !== beforeCount) {
return true; return true;
} }
if (succeedRenderCount !== beforeRealRenderCount) {
return true;
}
if (clickCounts !== beforeClickCount) { if (clickCounts !== beforeClickCount) {
return true; return true;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment