[PYTHON] Gitteranzeige des Doppelplots (linke und rechte vertikale Achse) (matplotlib)

Hallo. Mit Twinx Matplotlib habe ich versucht, Grit auf einem Plot mit doppelter vertikaler Achse anzuzeigen und es nicht unansehnlich zu machen.

Normalerweise sind die Positionen dieser Zecken und Gitter inkonsistent und unansehnlich. Dieses Mal fiel mir keine gute Methode ein, deshalb habe ich set_yticks manuell geschrieben, um sie konsistent zu machen (matplotlib 2.0.2). Figure_1.png

twinx_grid.py


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

t = np.arange(0.0, 10.01, 0.01)
_, ax1 = plt.subplots()
ax2 = ax1.twinx()

title = 'sin'
s1 = np.sin(np.pi*t)
ax1.plot(t, s1, 'b.')
ax1.set_ylabel(title, color='b', fontsize=18)

title = 'linear'
s2 = t * 1.6
ax2.plot(t, s2, 'g-')
ax2.set_ylabel(title, color='g', fontsize=18)

#Die Anzahl der Ticks auf der linken und rechten vertikalen Achse wird ausgeglichen, sodass sie sich an derselben Position befinden.
ax1.set_yticks(np.linspace(-1.0, 1.0, 5))
ax2.set_yticks(np.linspace(0, 20, 5))
ax1.set_ylim(-1.06, 1.06)
ax2.set_ylim(-0.6, 20.6)

ax1.tick_params(labelsize=18)
ax2.tick_params(labelsize=18)
ax1.set_xlabel('time (s)', fontsize=18)
ax1.grid(True, which='both') 
plt.xlim(-0.2, 10.2)
plt.subplots_adjust(left=0.18, right=0.86, bottom=0.14, top=0.94)
plt.show()

Recommended Posts

Gitteranzeige des Doppelplots (linke und rechte vertikale Achse) (matplotlib)
matplotlib Protokollskalenanzeige und Rasteranzeige
Über die linke und rechte Rechtfertigung von Kivy Label
Bei matplotlib ist die vertikale Achse auf der linken Seite des Histogramms die Frequenz und die vertikale Achse auf der rechten Seite die relative Frequenz (möglicherweise ein böser Weg).
Japanische Anzeige von Matplotlib, Seaborn
Installation von SciPy und matplotlib (Python)