aboutsummaryrefslogtreecommitdiff
path: root/qolab/data/trace.py
diff options
context:
space:
mode:
Diffstat (limited to 'qolab/data/trace.py')
-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()