Birisi bana tam olarak ne kullanıldığını açıklayabilir %matplotlib inline
mi?
Birisi bana tam olarak ne kullanıldığını açıklayabilir %matplotlib inline
mi?
Yanıtlar:
%matplotlib
Bir olan sihirli işlevi ipython içinde. Size kolaylık sağlamak için burada ilgili belgeleri sunacağım:
IPython, komut satırı stili sözdizimi ile çağırabileceğiniz, önceden tanımlanmış bir dizi 'sihirli işlev' içerir. Çizgi ve hücre odaklı olmak üzere iki tür sihir vardır. Çizgi büyülerine% karakteri eklenir ve OS komut satırı çağrılarına çok benzer: bağımsız değişken olarak satırın geri kalanını alırlar; burada bağımsız değişkenler parantez veya tırnak işaretleri olmadan iletilir. Satır büyüleri sonuçları döndürebilir ve bir ödevin sağ tarafında kullanılabilir. Hücre büyülerinin önüne %% double eklenir ve yalnızca satırın geri kalanını değil, aynı zamanda altındaki satırları da bağımsız bir bağımsız değişken olarak alan işlevlerdir.
%matplotlib inline
matplotlib arka ucunu 'satır içi' arka ucuna ayarlar :
Bu arka uçla, çizim komutlarının çıktısı, Jupyter dizüstü bilgisayar gibi ön uçlarda, onu üreten kod hücresinin hemen altında satır içi olarak görüntülenir. Sonuçta ortaya çıkan grafikler de defter belgesinde saklanır.
'Satır içi' arka ucu kullanırken, matplotlib grafikleriniz kodunuzun yanında not defterinize dahil edilecektir. Ayrıca, kodunuzda nasıl kullanılacağına ilişkin referans için IPython dizüstü matplotlib çizimini satır içinde nasıl yapacağınız da okunabilir .
Siz de etkileşim istiyorsanız, kullanabileceğiniz nbagg arka uç ile %matplotlib notebook
tarif edildiği gibi, (ipython 3.x) burada .
IPython çalıştırmanız şartıyla %matplotlib inline
, çizim çıktılarınızın görünmesini ve not defterinde saklanmasını sağlar.
Belgelere göre
Bunu ayarlamak için, herhangi bir çizim veya içe aktarma
matplotlib
gerçekleştirilmeden önce%matplotlib magic command
. Bu, IPython'un el ile doğru çalışması için gerekli sahne arkası kurulumunu gerçekleştirirmatplotlib
; bununla birlikte, aslında herhangi bir Python içe aktarma komutu yürütmez, yani ad alanına hiçbir isim eklenmez.IPython tarafından sağlanan özellikle ilginç bir arka uç, arka uçtur
inline
. Bu yalnızca Jupyter Notebook ve Jupyter QtConsole için kullanılabilir. Aşağıdaki gibi çağrılabilir:%matplotlib inline
Bu arka uçla, çizim komutlarının çıktısı, Jupyter dizüstü bilgisayar gibi ön uçlarda, onu üreten kod hücresinin hemen altında satır içi olarak görüntülenir. Sonuçta ortaya çıkan grafikler de defter belgesinde saklanır.
Jupyter dizüstü bilgisayarınıza grafik eklemek istiyorsanız, %matplotlib inline
standart bir çözümdür. Ve matplotlib
Jupyter içinde etkileşimli olarak kullanacak başka sihirli komutlar da var .
%matplotlib
: Herhangi bir plt
çizim komutu artık bir şekil penceresinin açılmasına neden olacak ve çizimi güncellemek için başka komutlar da çalıştırılabilir. Bazı değişiklikler otomatik olarak çizilmez, bir güncellemeyi zorlamak için kullanınplt.draw()
%matplotlib notebook
: dizüstü bilgisayarın içine yerleştirilmiş etkileşimli grafiklere yol açacak, şekli yakınlaştırabilir ve
%matplotlib inline
: yalnızca not defterine statik resimler çizin
IPython 5.0 ve matplotlib 2.0 ile başlayarak, IPython'un özel sihir ve
matplotlib.pyplot.ion()/matplotlib.pyplot.ioff()
IPython dışında çalışma avantajlarına sahip kullanımından kaçınabilirsiniz .
inline
, dış pencerelerde grafikler oluşturulur ve bunları not defterinde göstermek için display () kullanmanız gerekir.
Arka ucun ne olduğunu bilmiyorsanız, bunu okuyabilirsiniz: https://matplotlib.org/tutorials/introductory/usage.html#backends
Bazı insanlar matplotlib'i python kabuğundan etkileşimli olarak kullanırlar ve komut yazdıklarında çizim pencereleri açılır. Bazı insanlar hızlı veri analizi için Jupyter dizüstü bilgisayarları çalıştırır ve satır içi grafikler çizer. Diğerleri zengin uygulamalar oluşturmak için matplotlib'i wxpython veya pygtk gibi grafik kullanıcı arabirimlerine yerleştirir. Bazı insanlar, sayısal simülasyonlardan postscript görüntüleri oluşturmak için toplu komut dosyalarında matplotlib kullanır ve diğerleri de grafiklere dinamik olarak hizmet vermek için web uygulama sunucuları çalıştırır. Tüm bu kullanım durumlarını desteklemek için matplotlib farklı çıktıları hedefleyebilir ve bu özelliklerin her birine arka uç denir; "ön uç" kullanıcıya bakan kod, yani çizim kodudur, "arka uç" ise şekil oluşturmak için perde arkasındaki tüm zor işleri yapar.
Bu nedenle,% matplotlib satır içi yazdığınızda satır içi arka ucu etkinleştirir. Önceki yazılarda tartışıldığı gibi:
Bu arka uçla, çizim komutlarının çıktısı, Jupyter dizüstü bilgisayar gibi ön uçlarda, onu üreten kod hücresinin hemen altında satır içi olarak görüntülenir. Sonuçta ortaya çıkan grafikler de defter belgesinde saklanır.
Bu, kodumuzun bir parçası olarak oluşturduğumuz herhangi bir grafiğin, bu sihirli ifadeyi kullanmadığımızda gerçekleşecek olan ayrı bir pencerede değil, aynı not defterinde görüneceği anlamına gelir.
TL; DR
%matplotlib inline
- Çıktı satır içi görüntülerIPython çekirdeği, kod yürüterek grafikleri görüntüleme yeteneğine sahiptir. IPython çekirdeği, bu işlevselliği sağlamak için matplotlib çizim kütüphanesiyle sorunsuz çalışacak şekilde tasarlanmıştır.
%matplotlib
IPython ile el ele çalışmasını sağlamak için gerekli sahne arkası kurulumunu gerçekleştiren sihirli bir komutturmatplotlib
; herhangi bir Python içe aktarma komutu yürütmez, yani ad alanına isim eklenmez.
%matplotlib
(yalnızca Jupyter Notebook ve Jupyter QtConsole için kullanılabilir)
%matplotlib inline
(geçerli değerler 'GTK3Agg', 'GTK3Cairo', 'MacOSX', 'nbAgg', 'Qt4Agg', 'Qt4Cairo', 'Qt5Agg', 'Qt5Cairo', 'TkAgg', 'TkCairo', 'WebAgg', 'WX', 'WXAgg', 'WXCairo', 'agg', 'cairo', 'pdf', 'pgf', 'ps', 'svg', 'template'
)
%matplotlib gtk
Örnek - GTK3Agg - Bir GTK 3.x tuvaline dönüştüren bir Agg (PyGObject ve pycairo veya cairocffi gerektirir).
Matplotlib etkileşimli arka uçları hakkında daha fazla bilgi: burada
İle başlayarak
IPython 5.0
vematplotlib 2.0
IPython kendine özgü büyü ve kullanım kullanımı önleyebilirsinizmatplotlib.pyplot.ion()
/matplotlib.pyplot.ioff()
yanı ipython dışında çalışma avantajları vardır.
Jupyter Notebook çalıştırıyorsanız,% matplotlib satır içi komutu çizim çıktılarınızın not defterinde görünmesini sağlar, ayrıca saklanabilir.
Bunu yazmak zorunlu değildir. ( %matplotlib
) Sihirli işlevi olmadan benim için iyi çalıştı . Anaconda ile birlikte gelen Sypder derleyicisini kullanıyorum.