On Monday, January 9, 2012, Ethan Gutmann <ethan.gutm...@gmail.com> wrote:
> Along these lines, it looks to me like plot_surface is not shading when I
would expect it to (maybe I just have the wrong expectations?)
>
> I would expect the following to create a surface with colors from the
colormap but shading from a lightsource.
>
>        surf = ax.plot_surface(X, Y, Z, rstride=1, cstride=1,
cmap=cm.jet,shade=True)
>
> However, axes3d.py requires facecolors to be set in order to generate
facecolors to shade...
>
> mpl_toolkits/mplot3d/axes3d.py
> line 1378-1380 mpl v1.1.0
>
>        # Shade the data
>        if shade and cmap is not None and fcolors is not None:
>            fcolors = self._shade_colors_lightsource(Z, cmap, lightsource)
>
> should the if statement be:
>        if shade and cmap is not None and fcolors is None:
>
> I'm not sure if this will screw anything else up, but it makes a lot more
sense to me as an API. Maybe there are other reasons to require facecolors
to be set?
>
> Ethan

No, you are right.  This is roughly the requested feature I was talking
about.  There are multiple features in plot_surface() that are entwined and
I would like to figure out how to separate them and allow users to pick and
choose.

Features I have identified:

Coloring edgelines (complicated to determine what color)
Coloring based on colormap
Coloring based on user-spec  facecolors
Shading the colors (may or may not include edge lines)
Interpolating facecolors (for edgelines, IIRC)

These are inter-dependent and need to be made orthogonal.

Note, all of this is from memory, details might differ.

Cheers!
Ben Root
------------------------------------------------------------------------------
Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex
infrastructure or vast IT resources to deliver seamless, secure access to
virtual desktops. With this all-in-one solution, easily deploy virtual 
desktops for less than the cost of PCs and save 60% on VDI infrastructure 
costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to