2013-01-24 16 views
8

Genellikle grafiğin kenarına karşı çalıştırdığınızda marjı ekle, böyle grafikler olsun: o kenarına karşı çalıştığı içinaraziler ben matplotlib çizdirmek zaman

frequency response running along top edge

Sen işlevini göremez arsa.

frequency response with tiny amount of noise

+0

Ooh, her zaman 0'ın biraz üzerinde olduğundan emin olmak için küçük miktarlarda gürültü ekleyebilirsiniz? H + = randn (len (h)) * boşluk (abs (h)) * 100000' gibi bir şey? – endolith

cevap

15

Sen margins ayarlamak için ax.margins() kullanabilirsiniz: bunlar şuna benzer şekilde

otomatik bu durumlarda bazı marj ekleyin için herhangi bir yolu var mı. Örnek:

In [1]: fig, ax = plt.subplots() 

In [2]: ax.plot(np.arange(10), '-o') 
Out[2]: [<matplotlib.lines.Line2D at 0x302fb50>] 

without margin

In [1]: fig, ax = plt.subplots() 

In [2]: ax.margins(0.05) 

In [3]: ax.plot(np.arange(10), '-o') 
Out[3]: [<matplotlib.lines.Line2D at 0x302fb50>] 

with margin

Ayrıca sadece x- veya y-marjı ayarlayabilirsiniz. Ancak bu, varsayılan davranışı (tam otomatik olarak değil) yapabilmeniz için seçeneği olarak görünmüyor. Bunu istemek için github issue'u açtım.