ibrahimsaputra / achartengine

Automatically exported from code.google.com/p/achartengine
0 stars 0 forks source link

TimeSeries support multi-Y axis Timechart and add 4 legends? #111

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Patch content 
=================================================================== 
Modify TimeSeries support multi-Y axis Timechart 
add 4 legends 
=================================================================== 

patch file contents 
=================================================================== 

Index: achartengine/src/org/achartengine/chart/PointStyle.java 
=================================================================== 
--- achartengine/src/org/achartengine/chart/PointStyle.java     (版本 310) 
+++ achartengine/src/org/achartengine/chart/PointStyle.java     (工作副本) 
@@ -20,7 +20,7 @@ 
  */ 
 public enum PointStyle { 
   X("x"), CIRCLE("circle"), TRIANGLE("triangle"), SQUARE("square"), 
DIAMOND("diamond"), POINT( 
-      "point"); 
+      "point"), UP_V("v"), PLUS("plus"), DOWN_V("^"), 
NULLCIRCLE("nullcircle"); 

   /** The point shape name. */ 
   private String mName; 
Index: achartengine/src/org/achartengine/chart/ScatterChart.java 
=================================================================== 
--- achartengine/src/org/achartengine/chart/ScatterChart.java   (版本 310) 
+++ achartengine/src/org/achartengine/chart/ScatterChart.java   (工作副本) 
@@ -85,6 +85,31 @@ 
         drawX(canvas, paint, points[i], points[i + 1]); 
       } 
       break; 
+    // add "V" legend 
+    case UP_V: 
+      for (int i = 0; i < length; i += 2) { 
+        drawUp_V(canvas, paint, points[i], points[i + 1]); 
+      } 
+      break; 
+    // add "DOWN V" legend 
+    case DOWN_V: 
+      for (int i = 0; i < length; i += 2) { 
+        drawDown_V(canvas, paint, points[i], points[i + 1]); 
+      } 
+      break; 
+    // add "+" legend 
+    case PLUS: 
+      for (int i = 0; i < length; i += 2) { 
+        drawPlus(canvas, paint, points[i], points[i + 1]); 
+      } 
+      break; 
+    // add "Hollow circle○" legend 
+    case NULLCIRCLE: 
+      paint.setStyle(Paint.Style.STROKE); 
+      for (int i = 0; i < length; i += 2) { 
+        drawCircle(canvas, paint, points[i], points[i + 1]); 
+      } 
+      break; 
     case CIRCLE: 
       for (int i = 0; i < length; i += 2) { 
         drawCircle(canvas, paint, points[i], points[i + 1]); 
@@ -156,6 +181,22 @@ 
     case X: 
       drawX(canvas, paint, x + SHAPE_WIDTH, y); 
       break; 
+    // add "V" legend 
+    case UP_V: 
+      drawUp_V(canvas, paint, x + SHAPE_WIDTH, y); 
+      break; 
+    // add "DOWN V" legend 
+    case DOWN_V: 
+      drawDown_V(canvas, paint, x + SHAPE_WIDTH, y); 
+      break; 
+    // add "+" legend 
+    case PLUS: 
+      drawPlus(canvas, paint, x + SHAPE_WIDTH, y); 
+      break; 
+    // add "Hollow circle○" legend 
+    case NULLCIRCLE: 
+      drawNullCircle(canvas, paint, x + SHAPE_WIDTH, y); 
+      break; 
     case CIRCLE: 
       drawCircle(canvas, paint, x + SHAPE_WIDTH, y); 
       break; 
@@ -174,6 +215,26 @@ 
     } 
   } 

+  private void drawPlus(Canvas canvas, Paint paint, float x, float y) 
{ 
+    canvas.drawLine(x - size, y, x + size, y, paint); 
+    canvas.drawLine(x, y - size, x, y + size, paint); 
+  } 
+ 
+  private void drawUp_V(Canvas canvas, Paint paint, float x, float y) 
{ 
+    canvas.drawLine(x - size, y - size, x, y + size, paint); 
+    canvas.drawLine(x, y + size, x + size, y - size, paint); 
+  } 
+ 
+  private void drawDown_V(Canvas canvas, Paint paint, float x, float 
y) { 
+    canvas.drawLine(x - size, y + size, x, y - size, paint); 
+    canvas.drawLine(x, y - size, x + size, y + size, paint); 
+  } 
+ 
+  private void drawNullCircle(Canvas canvas, Paint paint, float x, 
float y) { 
+    paint.setStyle(Paint.Style.STROKE); 
+    canvas.drawCircle(x, y, size, paint); 
+  } 
+ 
   /** 
    * The graphical representation of an X point shape. 
    * 
Index: achartengine/src/org/achartengine/model/TimeSeries.java 
=================================================================== 
--- achartengine/src/org/achartengine/model/TimeSeries.java     (版本 310) 
+++ achartengine/src/org/achartengine/model/TimeSeries.java     (工作副本) 
@@ -30,6 +30,14 @@ 
   public TimeSeries(String title) { 
     super(title); 
   } 
+  /** 
+   * Builds multiple date /time series. 
+   * @param title the series title 
+   * @param scale the series scale number 
+   */ 
+  public TimeSeries(String title,int scale) { 
+    super(title,scale); 
+  } 

   /** 
    * Adds a new value to the series. 

Original issue reported on code.google.com by whwz...@gmail.com on 5 Aug 2011 at 8:20

GoogleCodeExporter commented 9 years ago

Original comment by whwz...@gmail.com on 5 Aug 2011 at 8:21

Attachments:

GoogleCodeExporter commented 9 years ago

Original comment by dandrome...@gmail.com on 10 Dec 2011 at 3:14