<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<br>
<blockquote type="cite" cite="mid:AM6PR06MB5062B209C9C4B783017EFFAF90F10@AM6PR06MB5062.eurprd06.prod.outlook.com">
<br>
<div class="moz-forward-container">
<div class="moz-forward-container">
<p>I have a couple of issues, trying to plot two y axes. How
do I</p>
<p>make grid cover whole area of plot</p>
<p>make xaxis labels go all way to right</p>
<p>make both y axes use same scale</p>
<p>get a legend for both plots onto the graph.</p>
<p>my graph and code are as follows:</p>
<p><img src="cid:part1.AA66AABC.0A74F71B@live.com" alt="" class="" width="518" height="278"></p>
<pre style="background-color:#ffffff;color:#000000;font-family:'Consolas';font-size:9.8pt;"><span style="color:#808080;font-style:italic;">#!c:/python/python
</span><span style="color:#000080;font-weight:bold;">import </span>sys
<span style="color:#000080;font-weight:bold;">import </span>numpy <span style="color:#000080;font-weight:bold;">as </span>np
<span style="color:#000080;font-weight:bold;">import </span>pandas <span style="color:#000080;font-weight:bold;">as </span>pd
<span style="color:#000080;font-weight:bold;">import </span>matplotlib <span style="color:#000080;font-weight:bold;">as </span>mpl
<span style="color:#000080;font-weight:bold;">import </span>matplotlib.pyplot <span style="color:#000080;font-weight:bold;">as </span>plt
<span style="color:#000080;font-weight:bold;">import </span>seaborn <span style="color:#000080;font-weight:bold;">as </span>sns
<span style="color:#000080;font-weight:bold;">import </span>warnings;
warnings.filterwarnings(<span style="color:#660099;">action</span>=<span style="color:#008080;font-weight:bold;">'once'</span>)
plt.style.use(<span style="color:#008080;font-weight:bold;">'seaborn-whitegrid'</span>)
sns.set_style(<span style="color:#008080;font-weight:bold;">"white"</span>)
cl1=<span style="color:#008080;font-weight:bold;">'red'
</span>cl2=<span style="color:#008080;font-weight:bold;">'blue'
</span>cl3=<span style="color:#008080;font-weight:bold;">'grey'
</span><span style="color:#008080;font-weight:bold;">
</span><span style="color:#000080;">print</span>(<span style="color:#008080;font-weight:bold;">"expected title filter1 filter3 file1 file2"</span>)
<span style="color:#000080;">print</span>(<span style="color:#008080;font-weight:bold;">"called with "</span>+sys.argv[<span style="color:#0000ff;">1</span>]+<span style="color:#008080;font-weight:bold;">","</span>+sys.argv[<span style="color:#0000ff;">2</span>]+<span style="color:#008080;font-weight:bold;">","</span>+sys.argv[<span style="color:#0000ff;">3</span>]+<span style="color:#008080;font-weight:bold;">","</span>+sys.argv[<span style="color:#0000ff;">4</span>])
<span style="color:#808080;font-style:italic;"># Version
</span><span style="color:#000080;">print</span>(mpl.<span style="color:#b200b2;">__version__</span>) <span style="color:#808080;font-style:italic;"># > 3.0.0
</span><span style="color:#000080;">print</span>(sns.<span style="color:#b200b2;">__version__</span>) <span style="color:#808080;font-style:italic;"># > 0.9.0
</span><span style="color:#808080;font-style:italic;"># Import Data
</span>dfr = pd.read_csv(sys.argv[<span style="color:#0000ff;">4</span>])
dfs = pd.read_csv(sys.argv[<span style="color:#0000ff;">5</span>])
xyr = dfr.groupby([<span style="color:#008080;font-weight:bold;">'c1'</span>]).count()[<span style="color:#008080;font-weight:bold;">'c2'</span>]
xys = dfs.groupby([<span style="color:#008080;font-weight:bold;">'c1'</span>]).count()[<span style="color:#008080;font-weight:bold;">'c2'</span>]
fig, ax = plt.subplots(<span style="color:#0000ff;">1</span>, <span style="color:#0000ff;">1</span>, <span style="color:#660099;">figsize</span>=(<span style="color:#0000ff;">16</span>, <span style="color:#0000ff;">9</span>), <span style="color:#660099;">dpi</span>=<span style="color:#0000ff;">90</span>)
<span style="color:#808080;font-style:italic;"># print data for plots
</span><span style="color:#000080;">print</span>(dfr.groupby(<span style="color:#008080;font-weight:bold;">'c1'</span>).count())
dfr.groupby([<span style="color:#008080;font-weight:bold;">'c1'</span>]).count()[<span style="color:#008080;font-weight:bold;">'c2'</span>].plot(<span style="color:#660099;">ax</span>=ax,<span style="color:#660099;">color</span>=cl1, <span style="color:#660099;">label</span>=<span style="color:#008080;font-weight:bold;">'leftfilter'</span>)
<span style="color:#808080;font-style:italic;"># Decorations
</span><span style="color:#808080;font-style:italic;"># ax1 (left Y axis)
</span>ax.set_xlabel(<span style="color:#008080;font-weight:bold;">'time'</span>, <span style="color:#660099;">color</span>=cl3, <span style="color:#660099;">fontsize</span>=<span style="color:#0000ff;">20</span>)
ax.tick_params(<span style="color:#660099;">axis</span>=<span style="color:#008080;font-weight:bold;">'x'</span>, <span style="color:#660099;">rotation</span>=<span style="color:#0000ff;">0</span>, <span style="color:#660099;">labelcolor</span>=cl3, <span style="color:#660099;">labelsize</span>=<span style="color:#0000ff;">12</span>)
ax.set_ylabel(sys.argv[<span style="color:#0000ff;">2</span>], <span style="color:#660099;">color</span>=cl1, <span style="color:#660099;">fontsize</span>=<span style="color:#0000ff;">20</span>)
ax.tick_params(<span style="color:#660099;">axis</span>=<span style="color:#008080;font-weight:bold;">'y'</span>, <span style="color:#660099;">rotation</span>=<span style="color:#0000ff;">0</span>, <span style="color:#660099;">labelcolor</span>=cl1)
ax.grid(<span style="color:#660099;">alpha</span>=<span style="color:#0000ff;">.4</span>)
s = <span style="color:#008080;font-weight:bold;">"%s min %d max %d avg %d std %d" </span>% (
sys.argv[<span style="color:#0000ff;">1</span>], dfr.groupby(<span style="color:#008080;font-weight:bold;">'c1'</span>).count().min()[<span style="color:#008080;font-weight:bold;">'c2'</span>], dfr.groupby(<span style="color:#008080;font-weight:bold;">'c1'</span>).count().max()[<span style="color:#008080;font-weight:bold;">'c2'</span>],
dfr.groupby(<span style="color:#008080;font-weight:bold;">'c1'</span>).count().mean()[<span style="color:#008080;font-weight:bold;">'c2'</span>], dfs.groupby(<span style="color:#008080;font-weight:bold;">'c1'</span>).count().std()[<span style="color:#008080;font-weight:bold;">'c2'</span>])
ax.set_title(s, <span style="color:#660099;">color</span>=cl3)
<span style="color:#808080;font-style:italic;"># ax2 (right Y axis)
</span>ax2 = ax.twinx() <span style="color:#808080;font-style:italic;"># instantiate a second axes that shares the same x-axis
</span>ax2.tick_params(<span style="color:#660099;">axis</span>=<span style="color:#008080;font-weight:bold;">'x'</span>, <span style="color:#660099;">rotation</span>=<span style="color:#0000ff;">0</span>, <span style="color:#660099;">labelcolor</span>=cl3, <span style="color:#660099;">labelsize</span>=<span style="color:#0000ff;">12</span>)
dfs.groupby([<span style="color:#008080;font-weight:bold;">'c1'</span>]).count()[<span style="color:#008080;font-weight:bold;">'c2'</span>].plot(<span style="color:#660099;">ax</span>=ax2, <span style="color:#660099;">color</span>=cl2)
ax2.set_ylabel(sys.argv[<span style="color:#0000ff;">3</span>], <span style="color:#660099;">color</span>=cl2, <span style="color:#660099;">fontsize</span>=<span style="color:#0000ff;">20</span>)
ax2.tick_params(<span style="color:#660099;">axis</span>=<span style="color:#008080;font-weight:bold;">'y'</span>, <span style="color:#660099;">labelcolor</span>=cl2)
fig.tight_layout()
<span style="color:#808080;font-style:italic;"># place legend in good spot
</span><span style="color:#808080;font-style:italic;">#plt.legend(loc=0)
</span>plt.show()
</pre>
</div>
</div>
</blockquote>
</body>
</html>