diff --git a/xchart-demo/src/main/java/com/xeiam/xchart/example/Example2.java b/xchart-demo/src/main/java/com/xeiam/xchart/example/Example2.java index 4ff7c581f3fc87525b90befc0159ccef25f03a34..4006d587bbcde7e6197d72c78e936941beb95df6 100644 --- a/xchart-demo/src/main/java/com/xeiam/xchart/example/Example2.java +++ b/xchart-demo/src/main/java/com/xeiam/xchart/example/Example2.java @@ -19,8 +19,10 @@ import java.util.ArrayList; import java.util.List; import com.xeiam.xchart.Chart; -import com.xeiam.xchart.QuickChart; +import com.xeiam.xchart.ChartBuilder; import com.xeiam.xchart.SwingWrapper; +import com.xeiam.xchart.style.Series; +import com.xeiam.xchart.style.SeriesMarker; /** * Create a Chart matrix @@ -36,7 +38,11 @@ public class Example2 { List<Chart> charts = new ArrayList<Chart>(); for (int i = 0; i < numCharts; i++) { - charts.add(QuickChart.getChart("" + i, "X", "Y", null, null, getRandomWalk(1000))); + Chart chart = new ChartBuilder().xAxisTitle("X").yAxisTitle("Y").width(600).height(400).build(); + chart.setyAxisMinMax(-10, 10); + Series series = chart.addSeries("" + i, null, getRandomWalk(200)); + series.setMarker(SeriesMarker.NONE); + charts.add(chart); } new SwingWrapper(charts).displayChartMatrix(); } diff --git a/xchart/src/main/java/com/xeiam/xchart/Chart.java b/xchart/src/main/java/com/xeiam/xchart/Chart.java index 1a2e451af2b1534ea7428f2ae80ff83dcafb471c..c720a405a82792c35445d24cf2a4275c75f8a41f 100644 --- a/xchart/src/main/java/com/xeiam/xchart/Chart.java +++ b/xchart/src/main/java/com/xeiam/xchart/Chart.java @@ -284,6 +284,32 @@ public abstract class Chart { return valueFormatter; } + /** + * Set the min and max value of the X axis + * + * @param min + * @param max + */ + public void setxAxisMinMax(double min, double max) { + + axisPair.getxAxis().setMinOverride(min); + axisPair.getxAxis().setMaxOverride(max); + } + + /** + * Set the min and max value of the Y axis + * + * @param min + * @param max + */ + public void setyAxisMinMax(double min, double max) { + + axisPair.getyAxis().setMinOverride(min); + axisPair.getyAxis().setMaxOverride(max); + } + + // / Internal ///////////////////////////////////////// + /** * for internal usage * diff --git a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/Axis.java b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/Axis.java index ee51100ddf1b94b33e4465621ba3ce26f42c8747..5a73a66edd82f9ef198c5813c25271f358413ebf 100644 --- a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/Axis.java +++ b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/Axis.java @@ -54,6 +54,10 @@ public class Axis implements ChartPart { private BigDecimal max = null; + private BigDecimal minOverride = null; + + private BigDecimal maxOverride = null; + /** the bounds */ private Rectangle bounds; @@ -228,14 +232,33 @@ public class Axis implements ChartPart { return axisType; } + public BigDecimal getMin() { + + if (minOverride == null) { + return min; + } else { + return minOverride; + } + + } + public BigDecimal getMax() { - return max; + if (maxOverride == null) { + return max; + } else { + return maxOverride; + } } - public BigDecimal getMin() { + public BigDecimal getMinOverride() { - return min; + return minOverride; + } + + public BigDecimal getMaxOverride() { + + return maxOverride; } public AxisTick getAxisTick() { @@ -262,4 +285,14 @@ public class Axis implements ChartPart { this.axisTitle = axisTitle; } + + public void setMinOverride(double minOverride) { + + this.minOverride = new BigDecimal(minOverride); + } + + public void setMaxOverride(double maxOverride) { + + this.maxOverride = new BigDecimal(maxOverride); + } }