diff --git a/superset/assets/javascripts/explore/components/controls/BoundsControl.jsx b/superset/assets/javascripts/explore/components/controls/BoundsControl.jsx
index 04a9764b07b3..313ab93ae3f8 100644
--- a/superset/assets/javascripts/explore/components/controls/BoundsControl.jsx
+++ b/superset/assets/javascripts/explore/components/controls/BoundsControl.jsx
@@ -51,10 +51,10 @@ export default class BoundsControl extends React.Component {
const mm = this.state.minMax;
const errors = [];
if (mm[0] && isNaN(mm[0])) {
- errors.push('`From` value should be numeric or empty');
+ errors.push('`Min` value should be numeric or empty');
}
if (mm[1] && isNaN(mm[1])) {
- errors.push('`To` value should be numeric or empty');
+ errors.push('`Max` value should be numeric or empty');
}
if (errors.length === 0) {
this.props.onChange([parseFloat(mm[0]), parseFloat(mm[1])], errors);
@@ -66,20 +66,20 @@ export default class BoundsControl extends React.Component {
return (
-
+
-
+
-
+
diff --git a/superset/assets/javascripts/explore/stores/store.js b/superset/assets/javascripts/explore/stores/store.js
index 64a0ad822516..2cd2874c266f 100644
--- a/superset/assets/javascripts/explore/stores/store.js
+++ b/superset/assets/javascripts/explore/stores/store.js
@@ -19,6 +19,16 @@ export function getControlNames(vizType, datasourceType) {
return controlNames;
}
+function handleDeprecatedControls(formData) {
+ // Reacffectation / handling of deprecated controls
+ /* eslint-disable no-param-reassign */
+
+ // y_axis_zero was a boolean forcing 0 to be part of the Y Axis
+ if (formData.y_axis_zero) {
+ formData.y_axis_bounds = [0, null];
+ }
+}
+
export function getControlsState(state, form_data) {
/*
* Gets a new controls object to put in the state. The controls object
@@ -32,10 +42,7 @@ export function getControlsState(state, form_data) {
const formData = Object.assign({}, form_data);
const vizType = formData.viz_type || 'table';
- // Control reacffectation for deprecation
- if (formData.y_axis_zero) {
- formData.y_axis_bounds = [0, null];
- }
+ handleDeprecatedControls(formData);
const controlNames = getControlNames(vizType, state.datasource.type);
diff --git a/superset/assets/visualizations/nvd3_vis.js b/superset/assets/visualizations/nvd3_vis.js
index 3be3e155a44a..a1cac1a9ee84 100644
--- a/superset/assets/visualizations/nvd3_vis.js
+++ b/superset/assets/visualizations/nvd3_vis.js
@@ -306,8 +306,7 @@ function nvd3Vis(slice, payload) {
if ((vizType === 'line' || vizType === 'area') && fd.rich_tooltip) {
chart.useInteractiveGuideline(true);
}
- if (
- chart.forceY &&
+ if (chart.forceY &&
fd.y_axis_bounds &&
(fd.y_axis_bounds[0] !== null || fd.y_axis_bounds[1] !== null)) {
chart.forceY(fd.y_axis_bounds);