2012-03-07 14 views
16

Desidero disegnare l'asse x=0 e y=0 nel grafico dei contorni, utilizzando un colore bianco. Se questo è troppo macchinoso, mi piacerebbe avere un punto bianco che indica dove si trova l'origine.Disegno delle linee degli assi o dell'origine per il grafico del profilo Matplotlib

Il grafico del mio profilo è il seguente e il codice per crearlo è indicato di seguito.

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

risposta

54

ci sono una serie di opzioni (ad esempio centered spines), ma nel tuo caso, è probabilmente più semplice di usare solo axhline e axvline.

E.g.

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

1

Non puoi semplicemente sovrapporre una linea retta?

plt.plot([0,0],[-4,4],lw=3,'w') 
Problemi correlati