summaryrefslogtreecommitdiff
path: root/gnuradio-runtime/python
diff options
context:
space:
mode:
authorTom Rondeau <tom@trondeau.com>2016-03-09 15:59:06 -0500
committerTom Rondeau <tom@trondeau.com>2016-03-09 15:59:06 -0500
commit6ee44604465f8c0c405be58c04346d38e60ce093 (patch)
treee5fb1f6ebc1111f0d8da225c0bb85d046c179e7c /gnuradio-runtime/python
parent0a1a76dd7e00a2dd11aaf4b10242d65d168c7c76 (diff)
ctrlport: Some version issues for running gr-perf-monitorx
Newer Matplotlib and Networkx modules have altered a few things on us. Doing some extra checks and setup to work with, hopefully, all current versions.
Diffstat (limited to 'gnuradio-runtime/python')
-rw-r--r--gnuradio-runtime/python/gnuradio/ctrlport/gr-perf-monitorx22
1 files changed, 19 insertions, 3 deletions
diff --git a/gnuradio-runtime/python/gnuradio/ctrlport/gr-perf-monitorx b/gnuradio-runtime/python/gnuradio/ctrlport/gr-perf-monitorx
index bb53e02cc4..4fd09dcc22 100644
--- a/gnuradio-runtime/python/gnuradio/ctrlport/gr-perf-monitorx
+++ b/gnuradio-runtime/python/gnuradio/ctrlport/gr-perf-monitorx
@@ -28,7 +28,18 @@ try:
matplotlib.use("QT4Agg")
import matplotlib.pyplot as plt
from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg as FigureCanvas
- from matplotlib.backends.backend_qt4agg import NavigationToolbar2QTAgg as NavigationToolbar
+
+ # Manage different matplotlib versions
+ try:
+ from matplotlib.backends.backend_qt4agg import NavigationToolbar2QTAgg as NavigationToolbar
+ except ImportError:
+ try:
+ from matplotlib.backends.backend_qt4agg import NavigationToolbar2QT as NavigationToolbar
+ except ImportError:
+ print sys.argv[0], "could not load QTAgg backend."
+ sys.exit(1)
+
+
from matplotlib.figure import Figure
except ImportError:
print sys.argv[0], "requires networkx and matplotlib.", \
@@ -42,6 +53,11 @@ import itertools
from gnuradio import gr, ctrlport
from gnuradio.ctrlport.GrDataPlotter import *
+if float(nx.__version__) >= 1.11:
+ from networkx.drawing.nx_agraph import graphviz_layout
+else:
+ graphviz_layout = nx.graphviz_layout
+
class MAINWindow(QtGui.QMainWindow):
def minimumSizeHint(self):
return QtGui.QSize(800,600)
@@ -778,8 +794,8 @@ class MForm(QtGui.QWidget):
self.canvas = FigureCanvas(self.f)
self.layout.addWidget(self.canvas);
- self.pos = nx.graphviz_layout(self.G);
- #self.pos = nx.pygraphviz_layout(self.G);
+ self.pos = graphviz_layout(self.G);
+ #self.pos = pygraphviz_layout(self.G);
#self.pos = nx.spectral_layout(self.G);
#self.pos = nx.circular_layout(self.G);
#self.pos = nx.shell_layout(self.G);