proplot-dev / proplot

🎨 A succinct matplotlib wrapper for making beautiful, publication-quality graphics
https://proplot.readthedocs.io
MIT License
1.12k stars 103 forks source link

share, span options for twin x and y axes #205

Open kinyatoride opened 4 years ago

kinyatoride commented 4 years ago

Description

Hi, I really like the feature that twinx and twiny can be applied to axs, which was not possible with matplotlib. Would it be possible to add share and span options to twinx and twiny? Such as twinx(sharey=3, spany=True). Currently, when we specified ylabel for twin axes, it will plot to all axes.

Steps to reproduce

import numpy as np
import proplot as plot

fig, axs = plot.subplots(nrows=2, ncols=2)
axs1 = axs.twinx()

x = np.arange(10)

for ax, ax1 in zip(axs, axs1):
    ax.plot(np.sin(x), c='b')
    ax1.plot(np.cos(x), c='r')

axs.format(ycolor='b', ylabel='ylabel1')
axs1.format(ycolor='r', ylabel='ylabel2')

Current behavior: ylabels and ticks are shown in every plots. Screen Shot 2020-07-10 at 10 45 00

Proplot version

0.6.4

lukelbd commented 4 years ago

Yep this is a really important item on my to-do list -- you can monitor PR #183 for updates.