Hi All,
On Dec 11, 2012, at 16:59 PM, Damon McDougall <damon.mcdoug...@gmail.com> wrote: > On Tue, Dec 11, 2012 at 1:16 PM, Benjamin Root <ben.r...@ou.edu> wrote: >> >> >> On Tue, Dec 11, 2012 at 2:08 PM, Chloe Lewis <chle...@berkeley.edu> wrote: >>> >>> Would it be workable for the default to be proportional to the size of the >>> array passed in? (suggested only because I do that myself, when deciding how >>> coarse an investigative plot I can get away with.) >>> >>> &C >>> >> >> That is pretty much what the PR I was referring to does: >> >> https://github.com/matplotlib/matplotlib/pull/1040 >> >> It makes it so that the behavior of both plot_surface and plot_wireframe is >> the same in this respect. So, by default, the rstride and cstride would be >> 1% of the size of your data array. This would make the default for the >> recent example be 1, therefore showing every point. I wonder if a >> logarithmic default would make sense to better handle large data arrays? >> >> Thoughts? >> Ben Root > > I hope nobody minds if I chime in here. > > I'm in favour of making the defaults a little more intelligent that > what is implemented at present, i.e, a constant stride for any > surface. Any non-trivial scaling law to determine what stride to use > will result in more expected behaviour than what our users are > currently seeing. > > Could we do better? Could we have plot_surface try and estimate the > stride based on the 'roughness' of the surface to be plotted? This > method would grind to a halt for very rough surfaces, so we could > default to a scaling law in these cases. > OK, way late here, but 1) I wasted an hour today before I discovered what "rstride" and "cstride" were. Reading the documentation, I still don't actually know what they are, except that if I want to see all my data I need to set them to 1. "Array row stride (step size)", is pretty enigmatic! "stride" is a term I've never heard before except is reference to walking. I see it is used in computer science, but to refer to the byte-wise distance between array elements, so not very analogous. Can I suggest the docs be improved to say exactly what these do (I assume either average over cstride columns and rstride rows, or subsample on that frequency, not clear which)? Can I also suggest the default is 1? Its pretty frustrating for large a chunk of your data to not show up for no logical reason. If my data set is too large, I am smart enough to subsample it myself before I plot it. 2) Can I suggest this example be added to the tutorial? http://stackoverflow.com/questions/6539944/color-matplotlib-plot-surface-command-with-surface-gradient None of the other examples explain how to colour your surface with data, which is what I wanted. 3) I think plot_surface should accept a fourth (optional) argument C for colouring the faces: plot_surface(X,Y,Z,C). I do this a lot if I want to make a 3-D plot, and normalizing C, clipping it, and indexing a colormap seem clunky, when the routine could do it for me. Thanks, Jody -- Jody Klymak http://web.uvic.ca/~jklymak/ ------------------------------------------------------------------------------ October Webinars: Code for Performance Free Intel webinars can help you accelerate application performance. Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from the latest Intel processors and coprocessors. See abstracts and register > http://pubads.g.doubleclick.net/gampad/clk?id=60133471&iu=/4140/ostg.clktrk _______________________________________________ Matplotlib-users mailing list Matplotlib-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-users