GNOME Bugzilla – Bug 334697
interesting behaviour of scatterplot in presence of missing data
Last modified: 2006-04-05 06:47:38 UTC
please see the attached image. I would have expected some more obvious behaviour for missing values, eg. dropping them or setting them to 0.
Created attachment 61321 [details] screen shot
That is definitely unexpected. Please tack on a sample file just in case there are some magic settings somewhere.
Created attachment 61324 [details] gnumeric sample file
Hmm, if y==NAN, we use y=0 and if x==NAN, we use the index. if (!gog_axis_map_finite (y_map, y)) y = 0; /* excel is just sooooo consistent */ if (!gog_axis_map_finite (x_map, x)) x = i; So, the result is logical if not wanted. We clearly must use something more consistent.
"if y==NAN, we use y=0" is not unexpected and some users may in fact want this. I would prefer if the user had a choice between this behaviour and excluding that point from the graph. "if x==NAN, we use the index" I can't imagine any user really wanting this unless no x value range is given at all. It would be less surprising to use 0 for missing values but again it would be nice if we had a choice. So, personally, using index (rather than 0) is a bug. Having a choice is an enhancement request.
Hide points, with 0 as an option seems the best choice. Anyway, when drawing lines these points are excluded.
Created attachment 61489 [details] [review] proposed patch
I think you should use glade for user interface. We'll probably add other settings to it. Also, could you adjust widget layout in order to fit existing dialogs.
Created attachment 61600 [details] [review] updated patch The same, but using libglade
Looks ok for me, except for the fact GladeXML is not freed in gog_xy_series_populate_editor.
Created attachment 62292 [details] [review] new updated patch Emmanuel, you are right, this patch should solve this problem.
Can we change the name to invalid-as-zero, please? Other than that, go ahead and commit.
Created attachment 62776 [details] [review] the same with invalid-as-zero
commited. fixed in HEAD