İçeriğe atla

Matplotlib

Matplotlib
Screenshot of Matplotlib plots and code
Orijinal yazar(lar)John D. Hunter
Geliştirici(ler)Michael Droettboom, et al.
İlk yayınlanma2003 (21 yıl önce) (2003)[1]
Güncel sürüm3.9.2[2] Bunu Vikiveri'de düzenleyin / 13 Ağustos 2024 (2 ay önce) (13 Ağustos 2024)
Programlama diliPython
İşletim sistemiÇoklu platform
TürÇizim
LisansMatplotlib license
Resmî sitesimatplotlib.org
Kod deposu Bunu Vikiveri'de düzenleyin

Matplotlib, Python programlama dili ve sayısal matematik uzantısı NumPy için bir çizim kitaplığıdır. Tkinter, wxPython, Qt veya GTK gibi genel amaçlı GUI araç setlerini kullanan uygulamalara grafikleri yerleştirmek için nesne yönelimli bir API sağlar. Ayrıca, kullanılması önerilmese de, MATLAB'ınkine çok benzeyecek şekilde tasarlanmış, bir durum makinesine (OpenGL gibi) dayalı bir yordamsal "plab" arabirimi vardır.[3] SciPy, Matplotlib'i kullanır.

Matplotlib aslen John D. Hunter tarafından yazılmıştır. O zamandan beri aktif bir geliştirme topluluğuna[4] sahiptir ve BSD tarzı bir lisans altında dağıtılmaktadır. Michael Droettboom, Ağustos 2012'de John Hunter'ın ölümünden kısa bir süre önce matplotlib'in baş geliştiricisi olarak aday gösterildi[5] ve Thomas Caswell de katıldı.[6][7] Matplotlib, NumFOCUS tarafından mali olarak desteklenen bir projedir.[8]

Matplotlib 2.0.x, Python 2.7 ila 3.10 sürümlerini destekler. Piton 3 desteği Matplotlib 1.2 ile başladı. Matplotlib 1.4, Python 2.6'yı destekleyen son sürümdür.[9] Matplotlib, Python 3 Bildirimini imzalayarak Python 2'yi 2020'den sonra desteklemeyeceğini taahhüt etti.[10]

MATLAB ile Karşılaştırma

Pyplot, MATLAB benzeri bir arayüz sağlayan bir Matplotlib modülüdür.[11] Matplotlib, Python kullanabilen, ücretsiz ve açık kaynak olmanın avantajı ile MATLAB kadar kullanılabilir olacak şekilde tasarlanmıştır.

Örnekler

Araç setleri

Matplotlib işlevselliğini genişleten çeşitli araç takımları mevcuttur. Bazıları ayrı indirilmelidir, diğerleri Matplotlib kaynak koduyla birlikte gelir ancak harici bağımlılıkları vardır.[12]

  • Temel harita : çeşitli harita projeksiyonları, kıyı şeritleri ve siyasi sınırlarla harita çizimi[13]
  • Cartopy: nesne yönelimli harita projeksiyon tanımları ve isteğe bağlı nokta, çizgi, çokgen ve görüntü dönüştürme özelliklerine sahip bir haritalama kitaplığı.[14] (Matplotlib v1.2 ve üzeri)
  • Excel araçları: Microsoft Excel ile veri alışverişi için yardımcı programlar
  • GTK araçları: GTK kitaplığına arayüz
  • Qt arayüzü
  • Mplot3d: 3 boyutlu çizimler
  • Natgrid: Düzensiz aralıklı verileri ızgaralamak için natgrid kitaplığına arayüz.
  • tikzplotlib: LaTeX belgelerine sorunsuz entegrasyon için Pgfplots'a dışa aktarma (eski adıyla matplotlib2tikz )[15]
  • Seaborn: Matplotlib'e ek olarak çizim stili ve renk varsayılanları için makul seçenekler sunan, yaygın istatistiksel çizim türleri için basit üst düzey işlevleri tanımlayan ve Pandas tarafından sağlanan işlevsellik ile bütünleşen bir API sağlar.

İlgili Projeler

  • Biggles[16]
  • Chaco[17]
  • DISLIN
  • GNU Oktav
  • gnuplotlib 23 Mayıs 2023 tarihinde Wayback Machine sitesinde arşivlendi. - bir gnuplot arka ucu ile numpy için çizim
  • Gnuplot -py[18]
  • PLplot – Python bağlamaları mevcut
  • SageMath - grafikler çizmek için Matplotlib kullanır
  • SciPy (plt ve gplt modülleri)
  • Plotly - etkileşimli, çevrimiçi Matplotlib ve Python grafikleri için
  • Bokeh[19] – Sunum için modern web tarayıcılarını hedefleyen Python etkileşimli görselleştirme kitaplığı

Kaynakça

  1. ^ "Copyright Policy". 6 Temmuz 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 20 Temmuz 2023. 
  2. ^ "Release 3.9.2". 13 Ağustos 2024. Erişim tarihi: 22 Ağustos 2024. 
  3. ^ "API Overview". matplotlib.org. 1 Temmuz 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 20 Temmuz 2023. 
  4. ^ "Matplotlib github stats". matplotlib.org. 24 Haziran 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 20 Temmuz 2023. 
  5. ^ "Announcing Michael Droettboom as the lead Matplotlib developer". matplotlib.org. 27 Ekim 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 24 Nisan 2013. 
  6. ^ "Matplotlib Lead Developer Explains Why He Can't Fix the Docs—But You Can – NumFOCUS". NumFOCUS (İngilizce). 5 Ekim 2017. 28 Haziran 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 11 Nisan 2018. 
  7. ^ "Credits – Matplotlib 2.2.2 documentation". matplotlib.org. 24 Haziran 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 11 Nisan 2018. 
  8. ^ "NumFOCUS Sponsored Projects". NumFOCUS. 4 Haziran 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 25 Ekim 2021. 
  9. ^ "Installing – Matplotlib 2.0.2 documentation". 24 Haziran 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 23 Haziran 2017. 
  10. ^ "Add Matplotlib to list by takluyver · Pull Request #20 · python3statement/python3statement.github.io". GitHub (İngilizce). 20 Kasım 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 11 Nisan 2018. 
  11. ^ "Matplotlib: Python plotting — Matplotlib 3.2.0 documentation". matplotlib.org. 7 Mayıs 2021 tarihinde kaynağından arşivlendi. Erişim tarihi: 14 Mart 2020. 
  12. ^ "Toolkits". matplotlib.org. 12 Haziran 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 20 Temmuz 2023. 
  13. ^ "The Matplotlib Basemap Toolkit User's Guide (v. 1.0.5)". Matplotlib Basemap Toolkit documentation. 21 Haziran 2013 tarihinde kaynağından arşivlendi. Erişim tarihi: 24 Nisan 2013.  Yazar |ad1= eksik |soyadı1= (yardım)
  14. ^ "Cartopy". 7 Ağustos 2013 tarihinde kaynağından arşivlendi. Erişim tarihi: 24 Nisan 2013.  Yazar |ad1= eksik |soyadı1= (yardım)
  15. ^ "tikzplotlib". GitHub. 8 Şubat 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Kasım 2016.  Yazar |ad1= eksik |soyadı1= (yardım)
  16. ^ "Bigglessimple, elegant python plotting". biggles.sourceforge.net. 24 Kasım 2010 tarihinde kaynağından arşivlendi. Erişim tarihi: 24 Kasım 2010. 
  17. ^ "Chaco". code.enthought.com. 9 Haziran 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 20 Temmuz 2023. 
  18. ^ "Gnuplot.py on". gnuplot-py.sourceforge.net. 25 Kasım 2010 tarihinde kaynağından arşivlendi. Erişim tarihi: 24 Kasım 2010. 
  19. ^ "Bokeh 2.0.0 Documentation". docs.bokeh.org. 25 Şubat 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 14 Mart 2020. 

Dış bağlantılar

İlgili Araştırma Makaleleri

Python, nesne yönelimli, yorumlamalı, birimsel (modüler) ve etkileşimli yüksek seviyeli bir programlama dilidir.

<span class="mw-page-title-main">GTK+</span>

GTK, çok platformlu grafiksel kullanıcı arayüzü geliştirme araç takımıdır. Qt ile beraber X Pencere Sistemi'nin en popüler araç takımıdır. GTK başlangıçta GNU Resim İşleme Programı için yazılmıştı. Şimdi GNU Projesi'nin bir parçası olarak LGPL lisansı altında özgür olarak dağıtılmaktadır.

<span class="mw-page-title-main">PiSi Paket Yöneticisi</span>

PiSi, 2011.2 sürümüne kadar Pardus'un güncel olarak da Pisi Linux ve Solus'un paket yöneticisidir. Bağımlılıkları takip ederek paket inşa etme, kurma, kaldırma, yükseltme ve benzeri işlevleri yerine getirir. Kullanıcı dostu bir grafiksel arayüz ve kapsamlı bir komut satırı arayüzü içerir. Geliştiriciler için tanıdık ve basit bir geliştirme ortamı sunar.

<span class="mw-page-title-main">Gwibber</span>

Gwibber, GNOME masaüstü ortamı için bir mikroblogging istemcisidir. GNU GPL lisansı ile dağıtılmaktadır.

<span class="mw-page-title-main">MATLAB</span>

MATLAB, çok paradigmalı sayısal hesaplama yazılımı ve dördüncü nesil programlama dilidir. Özel mülk bir programlama dili olan MATLAB, MathWorks tarafından geliştirilmektedir. MATLAB kullanıcıya, matris işleme, fonksiyon ve veri çizme, algoritma uygulama, kullanıcı arayüzü oluşturma, C, C++, Java ve Fortran gibi diğer dillerde yazılmış programlarla arabağlama imkânı tanır.

Python for S60' PyS60 olarak da adlandırılan, Nokia'nın, orijinal Python 2.2.2'den S60 yazılım platformunda genel Python programlama dilinin limanıydı. 11 Şubat 2010'da yayınlanan en son son sürüm olan PyS60-2.0.0, python çekirdeğini 2.5.4 sürümüne güncelledi.

IronPython, Python programlama dilinin .NET Framework ve Mono'yu hedefleyen bir gerçeklemesidir. Proje Jim Hugunin tarafından başlatılmış, Hugunin 5 Eylül 2006'da yayınlanan 1.0 sürümüne kadar aktif olarak katkıda bulunmuştur. IronPython 2.0 10 Aralık 2008'de piyasaya sürüldü. 1.0 sürümünden sonra, 2.7 Beta 1 sürümüne kadar Microsoft'ta küçük bir ekip tarafından geliştirildi. Hugunin'in Google'da çalışmaya başlamasının ardından Microsoft, IronPython'u geliştirmeyi 2010 yılının sonlarında sonlandırdı. Proje şu anda GitHub'da bir grup gönüllü tarafından yürütülmektedir. Ücretsiz ve açık kaynaklı bir yazılımdır ve Microsoft Visual Studio IDE için ücretsiz ve açık kaynaklı bir uzantı olan Visual Studio için Python Tools (PTVS) ile uygulanabilir.

PyTorch, Torch kütüphanesine dayanan açık kaynaklı bir makine öğrenme kütüphanesidir, bilgisayarla görme ve doğal dil işleme gibi uygulamalar için kullanılır. Öncelikle Facebook'un AI Araştırma laboratuvarı (FAIR) tarafından geliştirilmiştir. Değiştirilmiş BSD lisansı ile piyasaya sürülen ücretsiz ve açık kaynaklı bir yazılımdır. Python arabirimi daha öne çıkan ve geliştirmenin birincil odağı olmasına rağmen, PyTorch'un bir C ++ arabirimi de vardır.

pandas

pandas, veri işlemesi ve analizi için Python programlama dilinde yazılmış olan bir yazılım kütüphanesidir. Bu kütüphane temel olarak zaman etiketli serileri ve sayısal tabloları işlemek için bir veri yapısı oluşturur ve bu şekilde çeşitli işlemler bu veri yapısı üzerinde gerçekleştirilebilir olur. Yazılım ücretsizdir ve bir çeşit BSD ile lisansına sahiptir. Yazılım ismini bir ekonometri terimi olan veri panelinden almıştır. Bir veri paneli birçok zaman aralığı içinde farklı gözlemlerin işlenebildiği yapıyı tarif eder.

<span class="mw-page-title-main">Python Paket Dizini</span>

Python Paket Dizini, PyPI olarak kısaltılır ve Peynir Dükkanı olarak da bilinir, Python için resmi bir üçüncü taraf yazılım deposudur. Perl için CPAN deposuna ve R için CRAN deposuna benzer. PyPI, bir hayır kurumu olan Python Software Foundation tarafından işletilmektedir. Bazı paket yöneticileri, pip dahil, PyPI'yi paketler ve bağımlılıkları için varsayılan kaynak olarak kullanır.

<span class="mw-page-title-main">FreeCAD</span>

FreeCAD, özgür ve açık kaynaklı genel amaçlı parametrik 3B bilgisayar destekli tasarım (CAD) modelleyici ve sonlu elemanlar yöntemi (FEM) destekli bir yapı bilgi modelleme (BIM) yazılımıdır. FreeCAD, makine mühendisliği ürün tasarımı için tasarlanmıştır; ancak aynı zamanda mimari veya elektrik mühendisliği gibi mühendislik çevresinde daha geniş bir kullanım yelpazesini kapsar. Yazılımın özgür doğası nedeniyle kullanıcılar yazılımın işlevselliği Python programlama dili kullanarak gönüllüler ve kullanıcılar tarafından genişletilebilir.

<span class="mw-page-title-main">Pyqt</span>

PyQt, bir Python eklentisi olarak uygulanan, platformlar arası GUI araç seti Qt'nin bir Python bağlantısıdır.

<span class="mw-page-title-main">NumPy</span>

NumPy, Python programlama dili için büyük, çok boyutlu dizileri ve matrisleri destekleyen, bu diziler üzerinde çalışacak üst düzey matematiksel işlevler ekleyen bir kitaplıktır. NumPy'nin atası Numeric, ilk olarak Jim Hugunin tarafından diğer birkaç geliştiricinin katkılarıyla oluşturuldu. 2005 yılında Travis Oliphant, Numarray'in özelliklerini kapsamlı değişikliklerle Numeric'e dahil ederek NumPy'yi yarattı.

Microsoft Windows uygulama programlamasında, OLE Otomasyonu, Microsoft tarafından oluşturulan süreçler arası bir iletişim mekanizmasıdır. Başlangıçta Visual Basic olan komut dosyası dilleri tarafından kullanılması amaçlanan Bileşen Nesne Modeli'nin (COM) bir alt kümesine dayanmaktadır, ancak şimdi Windows'ta birkaç dil tarafından kullanılmaktadır. IDispatch arabirimini uygulamak için tüm otomasyon nesneleri gereklidir. Otomasyon denetleyicileri adı verilen uygulamaların, diğer uygulamalar tarafından dışa aktarılan paylaşılan otomasyon nesnelerine erişebildiği ve bunları değiştirebildiği bir altyapı sağlamaktadır. Uygulamaların birbirini kontrol etmesi için daha eski bir mekanizma olan Dinamik Veri Değişimi'nin (DDE) yerini almaktadır. DDE'de olduğu gibi, OLE Otomasyonunda otomasyon denetleyicisi "istemci"dir ve otomasyon nesnelerini dışa aktaran uygulama "sunucu"dur.

Bilgisayar biliminde dizi programlama, işlemlerin bir kerede tüm değerler kümesine uygulanmasına izin veren çözümleri ifade eder. Bu tür çözümler, bilimsel ve mühendislik ortamlarında yaygın olarak kullanılmaktadır.

<span class="mw-page-title-main">Zim (yazılım)</span>

Zim, kişisel bir wiki olan yerel olarak depolanan wiki sayfalarının bir koleksiyonunu korumak için tasarlanmış bir grafik metin editörüdür. Her wiki sayfası, basit biçimlendirmeli metinler, diğer sayfalara bağlantılar, ekler ve resimler gibi ögeler içerebilir. Denklem düzenleyici ve yazım denetleyici gibi ek eklentiler de mevcuttur. Wiki sayfaları, wiki formatlı düz metin dosyalarında bir klasör yapısında saklanır. Zim, İşlerin Tamamlanması yöntemiyle kullanılabilir.

<span class="mw-page-title-main">PLplot</span>

PLplot, genellikle C, C++, D, Fortran, Ada, OCaml ve Java gibi derlenmiş dillerde bilimsel çizimler yapmak için kullanılan bir alt program kütüphanesidir. Kütüphane aynı zamanda resmi olmayan .NET runtime bağlayıcısı olarak da mevcuttur.. PLplot ayrıca Octave, Python, Perl ve Tcl gibi yorumlanmış diller tarafından etkileşimli olarak kullanılabilir. Mevcut sürüm öncelikle Maurice J. LeBrun ve Geoffrey Furnish tarafından yazılmıştır.

<span class="mw-page-title-main">Meld (yazılım)</span>

Meld, geliştiricilerin kullanımını hedefleyen görsel fark ve birleştirme aracıdır. Kullanıcıların iki veya üç dosya veya dizini görsel olarak karşılaştırmasına ve farklı satırları renklerle kodlamasına olanak tanır.

Burada, sayısal analiz veya veri analizi için kullanılmak üzere tasarlanmış önemli son kullanıcı bilgisayar uygulamaları listelenmiştir:

PGF/Ti<i>k</i>Z Geometrik / cebirsel bir tanımlamadan vektör grafikleri üretmek için kullanılan dil çifti

PGF/TikZ, nokta, çizgi, ok, yol, daire, elips ve çokgen çizimi gibi standart özelliklere sahip bir geometrik/cebirsel tanımlamadan vektör grafikleri üretmek için kullanılan bir çift dildir. PGF alt düzey bir dildir, TikZ ise PGF kullanan bir dizi üst düzey makrodur. Üst düzey PGF ve TikZ komutları TeX makroları olarak çağrılır, ancak PSTricks'in aksine, PGF/TikZ grafiklerinin kendileri MetaPost'a benzeyen bir dilde tanımlanır. Till Tantau PGF ve TikZ dillerinin tasarımcısıdır. Aynı zamanda PGF ve TikZ için TeX ile yazılmış bilinen tek yorumlayıcının da ana geliştiricisidir. PGF, "Taşınabilir Grafik Biçimi "nin kısaltmasıdır. TikZ, PGF'nin 0.95 sürümünde tanıtılmıştır ve "TikZ ist kein Zeichenprogramm" ifadesinin özyinelemeli kısaltmasıdır.