Hi Guillermo,

I tried your code and I what I can see is that setSoftMax(Min) works fine only if you have 2 Y axis.

Adding another one the chart is showed not correctly.

What I can see is that for the 3 Y axis the X axis is not painted well.

I post my code so that you can validate my test:

```
Chart chart = new Chart();
Configuration conf = chart.getConfiguration();
conf.getChart().setZoomType(Dimension.XY);
conf.setTitle("My math functions");
conf.setSubTitle("Source: WorChartDemo");
XAxis x = new XAxis();
x.setCategories("0", "π/4", "π/2", "3π/4", "π", "5π/4", "3π/2", "7π/4", "2π");
conf.addxAxis(x);
YAxis y1 = new YAxis();
y1.setTitle(new AxisTitle("Sin"));
Labels labels = new Labels();
labels.setFormatter("return this.value +' '");
y1.setLabels(labels);
y1.setClassName("y1");
y1.setSoftMin(-1);
y1.setSoftMax(1);
y1.setShowEmpty(false);
conf.addyAxis(y1);
YAxis y2 = new YAxis();
y2.setTitle(new AxisTitle("Cos"));
labels = new Labels();
labels.setFormatter("return this.value +' '");
y2.setLabels(labels);
y2.setSoftMin(-1);
y2.setSoftMax(1);
y2.setShowEmpty(false);
y2.setClassName("y2");
conf.addyAxis(y2);
YAxis y3 = new YAxis();
y3.setTitle(new AxisTitle("Puff"));
labels = new Labels();
labels.setFormatter("return this.value +' o'");
y3.setLabels(labels);
y3.setSoftMin(-3);
y3.setSoftMax(3);
y3.setShowEmpty(false);
y3.setOpposite(true);
y3.setClassName("y3");
conf.addyAxis(y3);
Legend legend = new Legend();
legend.setLayout(LayoutDirection.VERTICAL);
legend.setAlign(HorizontalAlign.LEFT);
legend.setX(120);
legend.setVerticalAlign(VerticalAlign.TOP);
legend.setY(80);
legend.setFloating(true);
conf.setLegend(legend);
DataSeries series = new DataSeries();
PlotOptionsSpline plotOptionsColumn = new PlotOptionsSpline();
series.setPlotOptions(plotOptionsColumn);
series.setName("Sin");
series.setyAxis(0);
series.setData(0, 0.707, 1, 0.707, 0, -0.707, -1, -0.707, 0);
conf.addSeries(series);
series = new DataSeries();
PlotOptionsSpline plotOptionsSpline = new PlotOptionsSpline();
series.setPlotOptions(plotOptionsSpline);
series.setName("Cos");
series.setyAxis(1);
// series.setData(1016, 1016, 1015.9, 1015.5, 1012.3, 1009.5, 1009.6, 1010.2, 1013.1, 1016.9, 1018.2, 1016.7);
series.setData(1, 0.707, 0, -0.707, -1, -0.707, 0, 0.707, 1);
conf.addSeries(series);
series = new DataSeries();
plotOptionsSpline = new PlotOptionsSpline();
series.setPlotOptions(plotOptionsSpline);
series.setName("Puff");
series.setData(0, 1.5, 0.5, 1.5, 1.2, 2.5, 2.2, 2.5, 2.3);
series.setyAxis(2);
conf.addSeries(series);
```

As you can see the Y3 axis should start with 0 and it is correct looking the chart.

But the horizontal axis is not printed in the correct way (is good for the Y1 and Y2 instead)

To fix this behavior you need to set Max and Min (no SoftMax and SoftMin). But after that the axis will not disapprear

if you click on the legend.

Let me know what do you think about.

Thanks

Gianluca