aboutsummaryrefslogtreecommitdiff
path: root/qolab/data
diff options
context:
space:
mode:
authorEugeniy E. Mikhailov <evgmik@gmail.com>2021-12-03 13:14:48 -0500
committerEugeniy E. Mikhailov <evgmik@gmail.com>2021-12-03 13:14:48 -0500
commit2cd2d1ba131cf885e0534cec7f0504836f5b3d4b (patch)
tree545fb1507523fd5d087199915eaab2a5bc342839 /qolab/data
parent65a220c30593c86cc2ea4291b794196146880e9d (diff)
downloadqolab-2cd2d1ba131cf885e0534cec7f0504836f5b3d4b.tar.gz
qolab-2cd2d1ba131cf885e0534cec7f0504836f5b3d4b.zip
redid Trace(s) infrastructure
Diffstat (limited to 'qolab/data')
-rw-r--r--qolab/data/trace.py40
1 files changed, 17 insertions, 23 deletions
diff --git a/qolab/data/trace.py b/qolab/data/trace.py
index ef44041..871c8c2 100644
--- a/qolab/data/trace.py
+++ b/qolab/data/trace.py
@@ -1,51 +1,45 @@
-class TraceYonly:
+class Trace:
def __init__(self, descrStr):
self.descr = descrStr
- self.y = None
- self.ylabel = None
- self.yunit = None
+ self.values = None
+ self.label = None
+ self.unit = None
def plot(self):
import matplotlib.pyplot as plt
- plt.plot(self.y, label=self.descr)
+ plt.plot(self.values, label=self.descr)
plt.legend()
-class Trace(TraceYonly):
+class TraceXY:
def __init__(self, descrStr):
- super().__init__(descrStr)
- self.x = None
- self.xlabel = None
- self.xunit = None
+ self.descr = descrStr
+ self.x = Trace('x_values')
+ self.y = Trace('y_values')
def plot(self):
import matplotlib.pyplot as plt
- plt.plot(self.x, self.y, label=self.descr)
+ plt.plot(self.x.values, self.y.values, label=self.descr)
plt.legend()
+ plt.xlabel(self.x.label)
class TraceSetSameX:
def __init__(self, descrStr):
self.descr = descrStr
- self.x = None
- self.xlabel = None
- self.xunit = None
+ self.x = Trace('x_values')
self.traces={}
def addTrace(self, tr):
if len(self.traces) == 0:
self.x = tr.x
- self.xlabel = tr.xlabel
- self.xunit = tr.xunit
- trY = TraceYonly(tr.descr)
- trY.y = tr.y
- trY.ylabel = tr.ylabel
- trY.yunit = tr.yunit
- self.traces[trY.descr]=trY
+ trY = tr.y
+ self.traces[tr.descr]=trY
def plot(self):
import matplotlib.pyplot as plt
- for k, v in self.traces.items():
- plt.plot(self.x, v.y, label=v.descr)
+ for k, tr in self.traces.items():
+ tr.plot()
+ plt.xlabel(self.x.label)
plt.legend()