Hello Benjamin,

## ···

last weekend (after more than

a year… )

I found some spare time to refactor a bit the solution I

implemented to solve the axis synchronisation.

I have answered my own question on stackoverflow ()

and I have shared on github ()

a simple class that allows to easily make orthogonal projections

plots with full axis syncronisation and support for different

basic plot types.

Thanks again for the hint and sorry for the delay…

Alessandro

:-[

http://stackoverflow.com/questions/28239054/update-the-x-axis-of-a-matplotlib-subplot-according-to-the-y-axis-of-a-different/37265661#37265661

https://github.com/apbard/OrthogonalProjection

```
On 12/02/2015 19:58, Alessandro
```

Pietro Bardelli wrote:

thanks for your answer.

`I have played a bit with the callbacks and seems very`

promising.

`i'll work on it in the weekend and drop an email as soon as I`

have tested it properly

`thanks again Alessandro`

```
On 12/02/2015 15:35, Benjamin
```

Root wrote:

`Sharing the same axis across subplots is`

implemented via matplotlib’s interactive

framework, and is available by default. Glue is

built on top of matplotlib, extending its

interactive framework with many additional tools.

Yes, it might be overkill for this singular task,

but implementing orthogonal axis sharing isn’t

trivial, either, so suggesting a pre-packaged

solution is merely pragmatic.

`Essentially, one would have to register callbacks`

for changes in each of the parent subplot’s axis.

This, in of itself, isn’t really all that difficult

once one learns the event framework. I think what

might be very tricky is doing it for the 3d axes. As

the de facto maintainer of mplot3d, I have never

really tested axis sharing for mplot3d. I suspect

that it would work exactly as you’d expect for the x

and y axes, but the z axis may prove to be quirky. I

don’t know, I haven’t ever tried it out. In general,

the z-axis implementation is a bit of a kludge, so

things tend to be different for it…

`Here is an example of how to register callbacks to`

changes in a particular axis. Hopefully, it can give

you a nice leg up on the problem. Let me know if you

have problems with the z-axis, I might be able to help

sort it out. If you can get this to work, I would

certainly love to include it in the gallery.`[http://matplotlib.org/examples/event_handling/viewlims.html](http://matplotlib.org/examples/event_handling/viewlims.html)`

Cheers!

Ben Root

`On Thu, Feb 12, 2015 at 4:32 AM,`

Alessandro Pietro Bardelli <>

wrote:`Thanks for the`

answer.

`Glue seems a quite cool project but it is also a bit`

overkill for this specific task, isn’t it?

`Basically I just would like tell sharex to point the`

Yaxis of the axes object.

`Isn't there a way to do this within matplotlib? thanks Alessandro`

On 11/02/2015 16:41, Benjamin Root wrote:

`Sounds to me like you want to`

use glue: http://www.glueviz.org/en/stable/

`On Wed, Feb 11,`

2015 at 3:15 AM, Alessandro Pietro

Bardelli <>

wrote:`I would like to plot an`

orthogonal projection (like this

one )

using matplotlib possibly

including also the 3D subplot. All

the pictures should share common

axes.

`fig = plt.figure() ax = fig.add_subplot(221, title="XZ") bx = fig.add_subplot(222, title="YZ", sharey=ax) cx = fig.add_subplot(223, title="XY", sharex=ax, sharey=[something like bx.Xaxis]) dx = fig.add_subplot(224, title="XYZ", projection="3d", sharex=ax, sharey=bx, sharez=[something like bx.Yaxis]`

`The problem is that I have to`

“link” on X axis of a plot with

the Y one of another and

Is there a way to accomplish this?

Thanks

`Alessandro p.s. i have posted this question`

also on StackOverflow:

`Dive into the World of Parallel`

Programming. The Go Parallel Website,

`sponsored by Intel and developed in`

partnership with Slashdot Media, is your

`hub for all things parallel software`

development, from weekly thought

`leadership blogs to news, videos, case`

studies, tutorials and more. Take a

`look and join the conversation now. _______________________________________________`

Matplotlib-devel mailing list

–

`---------------------------------- Alessandro Pietro Bardelli HENESIS s.r.l. P.IVA (VAT. N.) IT02280660354 Viale dei Mille, 108 43125 PARMA (IT) Email: alessandro.bardelli@...1243... Tel: (+39)05211854211 Fax: (+39)05211854515 SkypeID: henesis_srl Web: [www.henesis.eu](http://www.henesis.eu) ----------------------------------`

alessandro.bardelli@…1243…alessandro.bardelli@…1243…http://i.stack.imgur.com/DnNds.jpghttp://stackoverflow.com/questions/28239054/update-x-axis-of-a-subplot-according-to-the-y-axis-of-another-one-in-python-matp

http://goparallel.sourceforge.net/

Matplotlib-devel@lists.sourceforge.net

https://lists.sourceforge.net/lists/listinfo/matplotlib-devel

–

```
----------------------------------
Alessandro Pietro Bardelli
HENESIS s.r.l.
P.IVA (VAT. N.) IT02280660354
Viale dei Mille, 108
43125 PARMA (IT)
Email: Tel: (+39)05211854211 Fax: (+39)05211854515 SkypeID: henesis_srl Web: ----------------------------------
```

alessandro.bardelli@…1243…

–

```
----------------------------------
Alessandro Pietro Bardelli
Camlin Italy S.r.l - part of Camlin group
P.IVA (VAT. N.) IT02280660354
Strada Budellungo, 2
43123 PARMA (IT)
Email: Tel: (+39)05211854211 (extension 14) Fax: (+39)05211854515 Web: ----------------------------------
```

alessandro.bardelli@…1243…