Index: trunk/Ohana/src/opihi/cmd.data/zplot.c
===================================================================
--- trunk/Ohana/src/opihi/cmd.data/zplot.c	(revision 14590)
+++ trunk/Ohana/src/opihi/cmd.data/zplot.c	(revision 20936)
@@ -3,6 +3,6 @@
 int zplot (int argc, char **argv) {
   
-  int i, kapa, Npts;
-  float *in, *out;
+  int i, kapa;
+  opihi_flt *out;
   double min, range;
   Graphdata graphmode;
@@ -31,11 +31,17 @@
     return (FALSE);
   }
-  Zvec.Nelements = zvec[0].Nelements;
-  ALLOCATE (Zvec.elements, float, Zvec.Nelements);
+  SetVector (&Zvec, OPIHI_FLT, zvec[0].Nelements);
+  out = Zvec.elements.Flt;
  
-  in = zvec[0].elements;
-  out = Zvec.elements;
-  for (i = 0; i < Zvec.Nelements; i++, in++, out++) {
-    *out = MIN (1.0, MAX (0.01, (*in - min) / range));
+  if (zvec[0].type == OPIHI_FLT) {
+    opihi_flt *in = zvec[0].elements.Flt;
+    for (i = 0; i < Zvec.Nelements; i++, in++, out++) {
+      *out = MIN (1.0, MAX (0.01, (*in - min) / range));
+    }
+  } else {
+    opihi_int *in = zvec[0].elements.Int;
+    for (i = 0; i < Zvec.Nelements; i++, in++, out++) {
+      *out = MIN (1.0, MAX (0.01, (*in - min) / range));
+    }
   }
 
@@ -44,8 +50,7 @@
   graphmode.size = -1; /* point size determined by Zvec */
   graphmode.etype = 0; /* no errorbars */
-  Npts = xvec[0].Nelements;
-  PlotVectorTriplet (kapa, Npts, xvec[0].elements, yvec[0].elements, Zvec.elements, &graphmode);
+  PlotVectorTriplet (kapa, xvec, yvec, &Zvec, &graphmode);
 
-  free (Zvec.elements);
+  free (Zvec.elements.Ptr);
 
   return (TRUE);
