From: Jim F. <jfo...@gm...> - 2011-03-25 15:25:36
|
Well, what do you know? For once, the call of the noob, "Hey! there must be a bug" speaks truth. Thanks, Angus! I added a little code to duplicate the last point until the array length is at least 5, and everything looks just fine. On 03/25/2011 01:10 PM, Angus McMorland wrote: > On 25 March 2011 07:31, jford14685<jfo...@gm...> wrote: >> I am a newbie Python programmer trying to make 3d barplots like >> http://matplotlib.sourceforge.net/examples/mplot3d/bars3d_demo.html this >> one on the Matplotlib site. >> >> When I run the demo source (python bars3d_demo.py) it works fine. I then >> changed the way xs and ys are assigned, to >> xs = np.array([1.,2.,3.]) # was xs = np.arange(20) >> ys = np.array([1.,2.,3.]) # was ys = np.random.rand(20) >> ax.bar(xs, ys, zs=1, zdir='y', color='r', alpha=0.8) >> (ditto for two other data sets) >> >> Now the bars are triangles. The right side of each bar is of the correct >> height, but the left side of each bar starts at zero. > Here's another data point. My guess is this is a bug with Axes3D: I > can recreate the problem with 3 bars, but with>4 bars everything > works okay. On my setup, with exactly 4 bars, the leftmost edge of the > bars doesn't get a border, so something possibly related is going on > there too. > > Angus. |