diff --git a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickCalculator.java b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickCalculator.java
index 63bd164647a160c4960abedcd36a3abdc80f8a32..f75fa3670571d8f4e0e1e98efdcc8303b37bb994 100644
--- a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickCalculator.java
+++ b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickCalculator.java
@@ -46,7 +46,7 @@ public abstract class AxisTickCalculator {
 
   /**
    * Constructor
-   * 
+   *
    * @param axisDirection
    * @param workingSpace
    * @param minValue
@@ -94,7 +94,7 @@ public abstract class AxisTickCalculator {
 
   /**
    * Gets the first position
-   * 
+   *
    * @param gridStep
    * @return
    */
@@ -104,10 +104,7 @@ public abstract class AxisTickCalculator {
 
     double firstPosition = minValue - (minValue % gridStep) + gridStep;
 
-    // System.out.println(firstPosition - minValue);
-    // System.out.println(.9 * gridStep);
-
-    if ((firstPosition - minValue) > .8 * gridStep) {
+    if ((firstPosition - minValue) > gridStep) {
       firstPosition = minValue - (minValue % gridStep);
     }
     return firstPosition;
@@ -125,7 +122,7 @@ public abstract class AxisTickCalculator {
 
   /**
    * Determine the grid step for the data set given the space in pixels allocated for the axis
-   * 
+   *
    * @param tickSpace in plot space
    * @return
    */
diff --git a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickLogarithmicCalculator.java b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickLogarithmicCalculator.java
index 0c4627b47a0694d0e8d55761933bf7a8117bd047..60bb7358802b9a5fedbe43dc794f1a559f4dbfc5 100644
--- a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickLogarithmicCalculator.java
+++ b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickLogarithmicCalculator.java
@@ -101,12 +101,12 @@ public class AxisTickLogarithmicCalculator extends AxisTickCalculator {
         // System.out.println("j: " + j);
         // System.out.println(Math.log10(j) % 1);
 
-        if (j < minValue - tickStep * .2) {
+        if (j < minValue - tickStep) {
           // System.out.println("continue");
           continue;
         }
 
-        if (j > maxValue + tickStep * 1.2) {
+        if (j > maxValue + tickStep) {
           // System.out.println("break");
           break;
         }
diff --git a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickNumericalCalculator.java b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickNumericalCalculator.java
index d5fcf6c6a01e5c0b7a5f252436dde46824c584ca..53b925b4a51605fe048bcbef7f86c8afa1961f90 100644
--- a/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickNumericalCalculator.java
+++ b/xchart/src/main/java/com/xeiam/xchart/internal/chartpart/AxisTickNumericalCalculator.java
@@ -72,8 +72,7 @@ public class AxisTickNumericalCalculator extends AxisTickCalculator {
     // System.out.println("scaledfirstPosition: " + cleanedFirstPosition);
 
     // generate all tickLabels and tickLocations from the first to last position
-    for (BigDecimal tickPosition = cleanedFirstPosition; tickPosition.compareTo(BigDecimal.valueOf(maxValue + cleanedGridStep.doubleValue() * 0.2)) <= 0; tickPosition =
-        tickPosition.add(cleanedGridStep)) {
+    for (BigDecimal tickPosition = cleanedFirstPosition; tickPosition.compareTo(BigDecimal.valueOf(maxValue)) < 0; tickPosition = tickPosition.add(cleanedGridStep)) {
 
       tickLabels.add(numberFormatter.formatNumber(tickPosition, minValue, maxValue));
       // here we convert tickPosition finally to plot space, i.e. pixels