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);
+  }
 }