@@ -129,8 +129,10 @@ def _encode_attr2(sendval, val, ismethods):
129
129
s += "{:.16G}," .format (p )
130
130
s = s [:- 1 ]
131
131
elif sendval == 'plot' or sendval == 'data' :
132
- for p in val :
133
- s += "{:.16G},{:.16G}," .format (p [0 ], p [1 ])
132
+ if sendval == 'data' and len (val ) == 0 : s += "None, None,"
133
+ else :
134
+ for p in val :
135
+ s += "{:.16G},{:.16G}," .format (p [0 ], p [1 ])
134
136
s = s [:- 1 ]
135
137
elif sendval in ['v0' , 'v1' , 'v2' , 'v3' ]: # val is the vertex object referenced by triangle or quad
136
138
s += str (val .idx )
@@ -2025,6 +2027,7 @@ def setup(self, args):
2025
2027
self ._interval = - 1
2026
2028
self ._graph = None
2027
2029
self ._visible = True
2030
+ self ._data = []
2028
2031
objName = args ['_objName' ]
2029
2032
del args ['_objName' ]
2030
2033
self ._constructing = True ## calls are from constructor
@@ -2160,6 +2163,8 @@ def preresolve2(self, args):
2160
2163
raise AttributeError ("Cannot currently change color in a plot statement." )
2161
2164
if 'pos' in args :
2162
2165
return self .resolveargs (args ['pos' ])
2166
+ elif 'data' in args :
2167
+ return self .resolveargs (args ['data' ])
2163
2168
else :
2164
2169
raise AttributeError ("Must be plot(x,y) or plot(pos=[x,y]) or plot([x,y]) or plot([x,y], ...) or plot([ [x,y], ... ])" )
2165
2170
@@ -2168,6 +2173,7 @@ def plot(self, *args1, **args2):
2168
2173
p = self .preresolve1 (args1 )
2169
2174
else :
2170
2175
p = self .preresolve2 (args2 )
2176
+ self ._data = self ._data + p
2171
2177
self .addmethod ('plot' , p )
2172
2178
2173
2179
@property
0 commit comments