[HepData-svn] r1372 - trunk/hepdata-webapp/src/main/java/cedar/hepdata/formats

blackhole at projects.hepforge.org blackhole at projects.hepforge.org
Fri Jun 25 11:51:42 BST 2010


Author: whalley
Date: Fri Jun 25 11:51:57 2010
New Revision: 1372

Log:
some changes to the Plain formatter to deal better with multiple x-axes

Modified:
   trunk/hepdata-webapp/src/main/java/cedar/hepdata/formats/PlainFormatter.java

Modified: trunk/hepdata-webapp/src/main/java/cedar/hepdata/formats/PlainFormatter.java
==============================================================================
--- trunk/hepdata-webapp/src/main/java/cedar/hepdata/formats/PlainFormatter.java	Thu Jun 24 10:01:13 2010	(r1371)
+++ trunk/hepdata-webapp/src/main/java/cedar/hepdata/formats/PlainFormatter.java	Fri Jun 25 11:51:57 2010	(r1372)
@@ -54,8 +54,9 @@
         if (d != null) {
             StringBuffer s = new StringBuffer();
             for (XAxis x : d.getXAxes()) {
-                if (xid == null || x.getId().equals(xid)) {
-                    for (YAxis y : d.getYAxes()) {
+//                if (xid == null || x.getId().equals(xid)) {
+                 if (x.getId().equals(1)) {
+                   for (YAxis y : d.getYAxes()) {
                         if (yid == null || y.getId().equals(yid)) {
                             s.append(format(x, y));
                             s.append("\n");
@@ -99,14 +100,23 @@
                     if (!p.getUnit().isDimensionless()) {
                         s.append(" " + p.getUnit().toString());
                     }
+                    s.append("\n");
                 }
             }
-            s.append("\n");
+            s.append("x: " + x.getHeader() + "\n");
+            for (int ix=1; ix<x.getDataset().getXAxes().size(); ix++){
+                s.append("x" + Integer.toString(ix+1) + ": " + x.getDataset().getXAxis(ix+1).getHeader() + "\n");
+            } 
+            s.append("y: " + y.getHeader() + "\n");
+//            s.append("\n");
 
             // Column key
+            
             final int numyerrs = y.getPoints().first().getErrors().size();
-            s.append("xl\t");
-            s.append("xh\t");
+            s.append("x\t");
+            s.append("xlow\t");
+            s.append("xhigh\t");
+            for (int ix=1; ix<x.getDataset().getXAxes().size(); ix++){s.append("x" + Integer.toString(ix+1) + "\t");} 
             s.append("y\t");
             for (int e = 0; e < numyerrs; ++e) {
                 s.append("dy+\tdy-\t");
@@ -114,15 +124,27 @@
             s.append("\n");
 
             for (int r = 1; r <= d.getMaxPointId(); ++r) {
-                StringTemplate row = new StringTemplate("$xlow$\t$xhigh$\t$yval$");
+                StringTemplate row = new StringTemplate();
+                String template = "";
                 Bin b = x.getBin(r);
                 Point p = y.getPoint(r);
                 if (b != null && p != null) {
                     Double xlow = b.getLowValue();
                     Double xhigh = b.getHighValue();
-                    Double yval = p.getValue();
+                    Double xfocus = b.getFocus();
+                    template = "$xfocus$\t$xlow$\t$xhigh$\t$yval$";
+                    for (int ix=1; ix<x.getDataset().getXAxes().size(); ix++){
+                        template=template.concat("\t$val" + Integer.toString(ix) + "$");
+                    } 
+                    row.setTemplate(template);
+                    row.setAttribute("xfocus", xfocus);
                     row.setAttribute("xlow", xlow);
                     row.setAttribute("xhigh", xhigh);
+                    for (int ix=1; ix<x.getDataset().getXAxes().size(); ix++){
+                        System.out.println("x " + x.getDataset().getXAxis(ix+1).getBin(r).getFocus());
+                        row.setAttribute("val" + Integer.toString(ix),x.getDataset().getXAxis(ix+1).getBin(r).getFocus());
+                    } 
+                    Double yval = p.getValue();
                     row.setAttribute("yval", yval);
                     s.append(row.toString());
                     for (Uncertainty e : p.getErrors()) {


More information about the HepData-svn mailing list