Description
When setting the position of the light source in a 3d surface plot using
go.Surface(z=myz,x=myx,y=myy,lightposition=dict(x=1e5, y=0, z=0.),
the x,y,z components of the light source position do not appear to make any sense. They do not work as sensible vector, and will flip the light position with minor changes of x,y or z. Currently it seems you have to spend ages trying different random combinations of values until something vaguely works. This is very unsatisfactory. The documentation is not at all helpful as it implies the light position is a sensible vector, which it doesn't appear to be:
lightposition
Parent: data[type=surface]
Type: dict containing one or more of the keys listed below.
x
Parent: data[type=surface].lightposition
Type: number between or equal to -100000 and 100000
Default: 10
Numeric vector, representing the X coordinate for each vertex.
y
Parent: data[type=surface].lightposition
Type: number between or equal to -100000 and 100000
Default: 10000
Numeric vector, representing the Y coordinate for each vertex.
z
Parent: data[type=surface].lightposition
Type: number between or equal to -100000 and 100000
Default: 0
Numeric vector, representing the Z coordinate for each vertex.