77"""
88import pygtk
99pygtk .require ('2.0' )
10- #import gobject
1110import gtk
1211from gtk import gdk
13- from gtk import TRUE , FALSE
1412
1513import matplotlib
1614matplotlib .use ('GTKAgg' ) # or 'GTK'
1715from matplotlib .backends .backend_gtk import FigureCanvasGTK as FigureCanvas
1816
19- from matplotlib .numerix import rand
17+ #from matplotlib.numerix import rand
18+ from matplotlib .numerix .random_array import random
2019from matplotlib .figure import Figure
2120
21+
2222class DataManager (gtk .Window ):
2323 numRows , numCols = 20 ,10
2424
25- data = rand (numRows , numCols )
25+ #data = rand(numRows, numCols)
26+ data = random ((numRows , numCols ))
2627
2728 def __init__ (self ):
2829 gtk .Window .__init__ (self )
30+ self .set_default_size (600 , 600 )
2931 self .connect ('destroy' , lambda win : gtk .main_quit ())
3032
3133 self .set_title ('GtkListStore demo' )
3234 self .set_border_width (8 )
3335
34- vbox = gtk .VBox (FALSE , 8 )
36+ vbox = gtk .VBox (False , 8 )
3537 self .add (vbox )
3638
3739 label = gtk .Label ('Double click a row to plot the data' )
3840
39- vbox .pack_start (label , FALSE , FALSE )
41+ vbox .pack_start (label , False , False )
4042
4143 sw = gtk .ScrolledWindow ()
4244 sw .set_shadow_type (gtk .SHADOW_ETCHED_IN )
@@ -47,14 +49,14 @@ def __init__(self):
4749 model = self .create_model ()
4850
4951 self .treeview = gtk .TreeView (model )
50- self .treeview .set_rules_hint (TRUE )
52+ self .treeview .set_rules_hint (True )
5153
5254
5355 # matplotlib stuff
5456 fig = Figure (figsize = (6 ,4 ))
5557
5658 self .canvas = FigureCanvas (fig ) # a gtk.DrawingArea
57- vbox .pack_start (self .canvas , False , False )
59+ vbox .pack_start (self .canvas , True , True )
5860 ax = fig .add_subplot (111 )
5961 self .line , = ax .plot (self .data [0 ,:], 'go' ) # plot the first row
6062
@@ -63,11 +65,9 @@ def __init__(self):
6365
6466 self .add_columns ()
6567
66- self .set_default_size (600 , 600 )
67-
6868 self .add_events (gdk .BUTTON_PRESS_MASK |
69- gdk .KEY_PRESS_MASK |
70- gdk .KEY_RELEASE_MASK )
69+ gdk .KEY_PRESS_MASK |
70+ gdk .KEY_RELEASE_MASK )
7171
7272
7373 def plot_row (self , treeview , path , view_column ):
@@ -84,15 +84,10 @@ def add_columns(self):
8484
8585
8686 def create_model (self ):
87- #types = [gobject.TYPE_DOUBLE]*self.numCols
8887 types = [float ]* self .numCols
8988 store = gtk .ListStore (* types )
9089
9190 for row in self .data :
92- #iter = store.append()
93- #pairs = []
94- #for i, num in enumerate(row): pairs.extend((i, num))
95- #store.set(iter, *pairs)
9691 store .append (row )
9792 return store
9893
0 commit comments