I am trying to plot multiple series on one axes and a bar chart on a shared x,
new y axes. I'm using twinx. The following test code works, but I need to render
the bar plot *behind* the line plots. Can I somehow control zorder globally
within a figure?

Alternatively, I could make the bar chart the first plot/axes ax1, but the
position for its y-axis must be on the right, the line chart's y-axis on the
left. Can this be controlled?

Thanks.

test.py:

import matplotlib
import numpy as np
import matplotlib.pyplot as plt

width_bar = 0.4
width_line = 6

for i in range(0,1):
    data = np.loadtxt(open('test.csv','r'), delimiter=',', 
                     dtype={'names': ('x','y1','y2','count'),
                            'formats': ('f4', 'i4', 'i4', 'i4', 'i4')},
                     usecols=(1,3,4,7))
    x,y1,y2,count = data['x'],data['y1'],data['y2'],data['count']
    fig = plt.figure()
    ax1 = fig.add_subplot(111)
    ax1.plot(x, y1, linewidth=width_line, zorder=3)
    ax1.plot(x, y2, linewidth=width_line, zorder=2)
    ax2 = ax1.twinx()
    ax2.bar(x, count, width=width_bar, color='0.9', zorder=1)
    plt.show()


test.csv:

1,3.0,3.2,6,0,-10,29,8
1,3.5,3.5,20,12,-4,55,29
1,4.0,4.0,51,29,15,97,71
1,4.5,4.5,82,62,37,136,143
1,5.0,5.0,130,102,69,197,154
1,5.5,5.5,186,147,115,275,164
1,6.0,6.0,256,202,159,382,187
1,6.5,6.5,351,265,236,522,183
1,7.0,7.0,446,340,308,646,192
1,7.5,7.5,562,426,376,826,184
1,8.0,8.0,654,526,437,934,193
1,8.5,8.5,797,648,553,1080,190
1,9.0,9.0,940,765,648,1271,173
1,9.5,9.5,1111,910,782,1457,180
1,10.0,10.0,1240,1040,919,1564,199
1,10.5,10.5,1333,1175,1011,1655,209
1,11.0,11.0,1449,1285,1112,1775,210
1,11.5,11.5,1458,1366,1120,1793,173
1,12.0,12.0,1449,1427,1089,1799,156
1,12.5,12.5,1441,1460,1073,1809,136
1,13.0,13.0,1458,1483,1100,1803,174
1,13.5,13.5,1446,1491,1080,1809,134
1,14.0,14.0,1447,1497,1081,1814,139
1,14.5,14.5,1424,1498,1046,1810,112
1,15.0,15.0,1433,1500,1065,1817,85
1,15.5,15.5,1427,1500,1048,1819,66
1,16.0,15.9,1428,1500,1036,1817,41
1,16.5,16.5,1383,1500,990,1799,29
1,17.0,17.0,1379,1500,935,1820,29
1,17.5,17.5,1352,1500,899,1817,16
1,18.0,18.0,1347,1500,861,1825,9
1,18.5,18.4,1464,1500,1130,1818,4
1,19.0,18.9,1449,1500,1065,1819,3


------------------------------------------------------------------------------
Free Software Download: Index, Search & Analyze Logs and other IT data in 
Real-Time with Splunk. Collect, index and harness all the fast moving IT data 
generated by your applications, servers and devices whether physical, virtual
or in the cloud. Deliver compliance at lower cost and gain new business 
insights. http://p.sf.net/sfu/splunk-dev2dev 
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to