Thanks to visit codestin.com
Credit goes to github.com

Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Scipy2013 Sprint: Cleaning F/C example
I cleaned the F/C example as suggested in the Scipy 2013 sprint. I had
the help of @leouieda on this.

For more information, please see #2181.
  • Loading branch information
gabraganca committed Feb 2, 2014
commit 53d68db9fa3464b37781ef35190a4e54ef9d2fe0
27 changes: 0 additions & 27 deletions examples/api/fahrenheit_celsius_scales.py

This file was deleted.

37 changes: 37 additions & 0 deletions examples/subplots_axes_and_figures/fahrenheit_celsius_scales.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
"""
Demo of how to display two scales on the left and right y axis.

This example uses the Fahrenheit and Celsius scales.
"""
import matplotlib.pyplot as plt
import numpy as np


def fahrenheit2celsius(temp):
"""
Returns temperature in Celsius.
"""
return (5. / 9.) * (temp - 32)


def convert_ax_c_to_celsius(ax_f):
"""
Update second axis according with first axis.
"""
y1, y2 = ax_f.get_ylim()
ax_c.set_ylim(fahrenheit2celsius(y1), fahrenheit2celsius(y2))
ax_c.figure.canvas.draw()

fig, ax_f = plt.subplots()
ax_c = ax_f.twinx()

# automatically update ylim of ax2 when ylim of ax1 changes.
ax_f.callbacks.connect("ylim_changed", convert_ax_c_to_celsius)
ax_f.plot(np.linspace(-40, 120, 100))
ax_f.set_xlim(0, 100)

ax_f.set_title('Two scales: Fahrenheit and Celsius')
ax_f.set_ylabel('Fahrenheit')
ax_c.set_ylabel('Celsius')

plt.show()