web-dev-qa-db-ja.com

Matplotlib等高線図の軸線または原点を描く

白い色を使用して、等高線図にx=0およびy=0軸を描画します。面倒すぎる場合は、Originの場所を示す白い点を付けたいと思います。

私の等高線図は次のようになり、それを作成するコードは以下のとおりです。

xvec = linspace(-5.,5.,100)                               
X,Y = meshgrid(xvec, xvec)                                
fig = plt.figure(figsize=(6, 4))                      
contourf(X, Y, W,100)                             
plt.colorbar()                                    

enter image description here

22
nos

多くのオプションがあります(たとえば centered spines )が、あなたの場合は axhlineaxvline

例えば。

import numpy as np
import matplotlib.pyplot as plt

xvec = np.linspace(-5.,5.,100)                               
x,y = np.meshgrid(xvec, xvec)
z = -np.hypot(x, y)                                

plt.contourf(x, y, z, 100)                             
plt.colorbar() 

plt.axhline(0, color='white')
plt.axvline(0, color='white')

plt.show()

enter image description here

70
Joe Kington

直線を重ねることはできませんか?

plt.plot([0,0],[-4,4],lw=3,'w')
1
ev-br