Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
944eaa6
Temporal stability prediction graph with mock data
Musacca Jan 22, 2020
daefed4
Temporal stability lime graph with mock data
Musacca Jan 22, 2020
da354e8
Temporal stability lime graph with mock data fix error
Musacca Jan 22, 2020
11548c9
temporal stability APIs integrated
Musacca Jan 22, 2020
1f126e9
clean code
Musacca Jan 22, 2020
5685f54
small error fix
Musacca Jan 22, 2020
b7a0833
Testing decision tree
Musacca Mar 2, 2020
bedf1a3
Testing decision tree
Musacca Mar 2, 2020
4a7b8de
decision tree clickable
Musacca Mar 11, 2020
3c99b74
Mock design for SHAP, Skater, ICE is ready
Musacca Mar 17, 2020
c580777
ICE and Decoded dataframe table is ready
Musacca Mar 19, 2020
54a0994
Tests SHAP, ICE and Skater developed
Musacca Mar 23, 2020
27bfb9c
Merge pull request #4 from nirdizati-research/master
Musacca Mar 28, 2020
6791e6c
Merge branch 'explanation' into explanation-page
Musacca Mar 28, 2020
16a4a58
Merge pull request #5 from Musacca/explanation-page
Musacca Mar 28, 2020
f2645cd
small design bug fix
Musacca Apr 4, 2020
addbb4b
Update Explanation.js
Musacca Apr 4, 2020
9f3ca1e
Update README.md
Musacca Apr 6, 2020
3452be4
Merge branch 'explanation-page' of https://github.com/Musacca/predict…
Musacca Apr 8, 2020
fda6e51
show explanation page in main page
Musacca Apr 8, 2020
0747017
Merge branch 'explanation' of https://github.com/Musacca/predict-reac…
Musacca Apr 8, 2020
cc79296
CfFeedback
Musacca Apr 12, 2020
d7fc24d
Merge pull request #7 from Musacca/explanation-page
Musacca Apr 12, 2020
3f5ac49
ignore tests for unreachable files
Musacca Apr 12, 2020
8217564
reducers coverage increase
Musacca Apr 12, 2020
5ebdb62
increase test coverage
Musacca Apr 12, 2020
63ee106
increase test coverage
Musacca Apr 19, 2020
f07e387
increase test coverage
Musacca Apr 19, 2020
daa00a3
increase test coverage
Musacca Apr 19, 2020
93efa3f
increase test coverage
Musacca Apr 19, 2020
6a682cb
increase test coverage
Musacca Apr 19, 2020
fe35de2
increase test coverage
Musacca Apr 19, 2020
4d0da33
Merge branch 'master' into explanation
Musacca Apr 19, 2020
b3c95a0
small fix
Musacca Apr 19, 2020
735eae6
Merge branch 'master' into explanation
Musacca Apr 19, 2020
b2a26dd
small design changes
Musacca Apr 25, 2020
77fb43c
Merge branch 'explanation' of https://github.com/Musacca/predict-reac…
Musacca Apr 25, 2020
42a26e5
small design changes
Musacca Apr 25, 2020
99f735a
Merge branch 'master' into explanation
Musacca Apr 25, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,7 @@ describe('HorizontalBarChartCard', () => {
it('renders with empty labels', () => {
const element = shallow(<HorizontalBarChartCard data={values} labels={[]}/>);
expect(element).toBeDefined();
expect(element.find(ReactApexChart).length).toBe(1);

const chartProps = element.find(ReactApexChart).props();
expect(chartProps.options.xaxis.categories.length).toBe(0);
expect(chartProps.series[0].data.length).toBe(5);
expect(element.find(ReactApexChart).length).toBe(0);
});

it('renders with non empty data and label', () => {
Expand Down
6 changes: 3 additions & 3 deletions src/__tests__/components/explanation/CfFeedback.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import {retrainResult, cfFeedbackResult, uniqueEncodedDecodedValues} from '../..
import CfFeedback from '../../../components/explanation/CfFeedback';
import RetrainResultTable from '../../../components/explanation/RetrainResultTable';
import {TextField, SelectField} from 'react-md';
import CfFeedbackResulttTable from '../../../components/explanation/CfFeedbackResulttTable';
import CfFeedbackResultTable from '../../../components/explanation/CfFeedbackResultTable';
import {getUniqueFeatureValues, getFeatureNames, encodePatternsForDropdown} from '../../../util/dataReducers';

const onSubmitTopK = jest.fn();
Expand All @@ -30,7 +30,7 @@ describe('CfFeedback result', () => {
element.setState({numberOfDropdownPatterns: 1});

expect(element.find(TextField).length).toBe(1);
expect(element.find(CfFeedbackResulttTable).length).toBe(1);
expect(element.find(CfFeedbackResultTable).length).toBe(1);
expect(element.find(RetrainResultTable).length).toBe(1);
expect(element.find(TextField).at(0).props().min).toBe(0);
expect(element.find(SelectField).length).toBe(3);
Expand All @@ -56,7 +56,7 @@ describe('CfFeedback result', () => {
element.setState({numberOfDropdownPatterns: 1});

expect(element.find(TextField).length).toBe(1);
expect(element.find(CfFeedbackResulttTable).length).toBe(1);
expect(element.find(CfFeedbackResultTable).length).toBe(1);
expect(element.find(RetrainResultTable).length).toBe(1);
expect(element.find(TextField).at(0).props().min).toBe(0);
expect(element.find(SelectField).length).toBe(3);
Expand Down
2 changes: 1 addition & 1 deletion src/__tests__/components/explanation/post_hoc.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ describe('Lime result', () => {
traceId={1}
limeValueList={{labels: [], values: []}}/>);
expect(element).toBeDefined();
expect(element.find(HorizontalBarChartCard).length).toBe(0);
expect(element.find(HorizontalBarChartCard).length).toBe(1);
});

it('renders with data', () => {
Expand Down
2 changes: 1 addition & 1 deletion src/components/chart/HorizontalBarChartCard.js
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ class HorizontalBarChartCard extends React.Component {
/>
);

return <div id="chart">{this.props.data.length === 0 ? '' : chart}</div>;
return <div id="chart">{this.props.data.length === 0 || this.props.labels.length === 0 ? '' : chart}</div>;
}
}

Expand Down
2 changes: 1 addition & 1 deletion src/components/chart/PredictionLineChart.js
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ class PredictionLineChart extends React.Component {
},
labels: {
formatter: function (val, i) {
return val;
return val.toFixed(2);
}
}
},
Expand Down
4 changes: 2 additions & 2 deletions src/components/explanation/CfFeedback.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import {Card, CardTitle, CardText} from 'react-md/lib/Cards/index';
import PropTypes from 'prop-types';
import CircularProgress from 'react-md/lib/Progress/CircularProgress';
import {TextField} from 'react-md';
import CfFeedbackResulttTable from './CfFeedbackResulttTable';
import CfFeedbackResultTable from './CfFeedbackResultTable';
import SelectField from 'react-md/lib/SelectFields';
import {Row} from 'react-grid-system';
import RetrainResultTable from './RetrainResultTable';
Expand Down Expand Up @@ -321,7 +321,7 @@ class CfFeedback extends PureComponent {
</Row>
</div>
{!this.props.isCfFeedbackValuesLoaded ? <CircularProgress id="query-indeterminate-progress"/> : null}
<CfFeedbackResulttTable
<CfFeedbackResultTable
cfFeedbackResult={this.props.cfFeedbackValue}
onSelectedMatrixChange={this.onSelectedMatrixChange.bind(this)}
selectedMatrix={this.state.selectedMatrix}
Expand Down
2 changes: 1 addition & 1 deletion src/components/explanation/CfFeedbackResultTable.js
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ class CfFeedbackResultTable extends PureComponent {
<DataTable baseId="simple-pagination" plain>
<TableHeader>
<TableRow selectable={false}>
{this.getHeaderColumns(['Matrix', 'Pattern', 'Value'])}
{this.getHeaderColumns(['Class', 'Pattern', 'Frequency'])}
</TableRow>
</TableHeader>
<TableBody>
Expand Down
2 changes: 1 addition & 1 deletion src/components/explanation/post_hoc.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ const PostHocExplanation = (props) => {
{!props.isLimeValuesLoaded ? <CircularProgress id="query-indeterminate-progress"/> : null}
<CardText>
<div className="md-cell md-cell--12" key="1">
{props.limeValueList.values.length > 0 ? horizontalBarChart : null}
{horizontalBarChart}
</div>
</CardText>
</Card>;
Expand Down
6 changes: 6 additions & 0 deletions src/reducers/Explanation.js
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ const explanation = (state = initialState, action) => {
case LIME_VALUE_LIST_REQUESTED: {
return {
...state,
limeValueList: {},
fetchState: {inFlight: true},
isLimeValuesLoaded: false,

Expand Down Expand Up @@ -74,6 +75,7 @@ const explanation = (state = initialState, action) => {
case SHAP_VALUE_LIST_REQUESTED: {
return {
...state,
shapValueList: {},
fetchState: {inFlight: true},
isShapValuesLoaded: false,

Expand Down Expand Up @@ -103,6 +105,7 @@ const explanation = (state = initialState, action) => {
case SKATER_VALUE_LIST_REQUESTED: {
return {
...state,
skaterValueList: {},
fetchState: {inFlight: true},
isSkaterValuesLoaded: false,

Expand Down Expand Up @@ -132,6 +135,7 @@ const explanation = (state = initialState, action) => {
case ICE_VALUE_LIST_REQUESTED: {
return {
...state,
iceValueList: {},
fetchState: {inFlight: true},
isIceValuesLoaded: false,

Expand Down Expand Up @@ -161,6 +165,7 @@ const explanation = (state = initialState, action) => {
case CFFEEDBACK_VALUE_LIST_REQUESTED: {
return {
...state,
cfFeedbackValue: {},
fetchState: {inFlight: true},
isCfFeedbackLoaded: false,

Expand Down Expand Up @@ -190,6 +195,7 @@ const explanation = (state = initialState, action) => {
case RETRAIN_VALUE_LIST_REQUESTED: {
return {
...state,
retrainValue: {},
fetchState: {inFlight: true},
isRetrainLoaded: false,

Expand Down