Skip to content

Instantly share code, notes, and snippets.

@L3onSW
Last active February 26, 2024 04:24
Show Gist options
  • Save L3onSW/2013e39b67a6480f01530cb9ddf7456a to your computer and use it in GitHub Desktop.
Save L3onSW/2013e39b67a6480f01530cb9ddf7456a to your computer and use it in GitHub Desktop.

matlotlibで外枠上にグラフを重ねる方法

Pythonのmatlotlibで外枠の上にグラフを重ねるには、 「clip_on=False, zorder=5」を引数に追加する。

背景

単純にグラフを作ると、外枠の下にグラフが隠れてしまう。
しかし、外枠の上にグラフを表示したい時も稀にあるので、実現方法を記録しておきたい。

実現方法:clip_on=False, zorder=5

「clip_on=False, zorder=5」を引数に追加することで実現できる。

  • clip_on=False:外枠からはみ出たグラフも描写する
  • zorder=5:外枠の前面にグラフを描写する(指定しないと点の中に外枠の線が現れてしまう)
import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 10, np.pi/6)
y = np.sin(x)
plt.rcParams['xtick.direction'] = 'in'
plt.rcParams['ytick.direction'] = 'in'
plt.figure(figsize=(10, 3))
plt.plot(x, y, color='red')
plt.scatter(x, y, s=100, color='red', clip_on=False, zorder=5)
plt.xlim(0, 10)
plt.ylim(-1, 1)
plt.xlabel(r'$x$', fontsize=25)
plt.ylabel(r'$\sin{x}$', fontsize=25)
plt.tick_params(labelsize=15)
plt.show()
@L3onSW
Copy link
Author

L3onSW commented Feb 26, 2024

conclusion

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment