Linux'ta en iyi 5 veri görselleştirme aracını kullanacak mısınız? (Büyük veri linux eğitimi ile)

Verilerin grafiksel görselleştirilmesi için Linux'ta basit 2 boyutlu çizimden 3 boyutlu çizime, bilimsel grafiksel programlamaya ve grafik simülasyonuna kadar birçok uygulama vardır. Neyse ki, bu alanda gnuplot, GNU Octave, Scilab, MayaVi, Maxima vb. Dahil olmak üzere birçok açık kaynaklı araç uygulaması var. Her aracın kendi avantajları ve dezavantajları vardır ve farklı uygulamalar için tasarlanmıştır. Bu açık kaynaklı grafik görselleştirme araçlarının araştırılması, uygulamamız için hangi aracın en iyi olduğuna daha iyi karar vermemize yardımcı olacaktır.

Görselleştirme araçlarının kısa bir listesi

Bu yazıda, birçok popüler Linux veri görselleştirme aracını inceleyecek ve bazılarını daha derinlemesine tartışacağız. Örneğin, bir araç sayısal hesaplamalar için bir dil sağlıyor mu? Bu araç etkileşimli mi yoksa bireysel işlemler için toplu mod sağlıyor mu? Bu araç görüntü veya dijital sinyal işleme için kullanılabilir mi? Bu araç, kullanıcı uygulamalarıyla (Python, Tcl, Java programlama dili vb.) Entegrasyonu desteklemek için dil bağlantıları sağlıyor mu? Ek olarak, bazı araçların grafik işleme yetenekleri gösterilecektir. Son olarak, hangi aracın bilgi işlem görevleri veya veri görselleştirme için en iyi olduğunu belirlememize yardımcı olmak için her bir aracın güçlü yönlerini analiz edeceğiz.

Bu makalede incelenen açık kaynaklı araçlar şunları içerir (her araç tarafından kullanılan lisans da verilmiştir):

  • Gnuplot (GPL)
  • GNU Oktav (GPL)
  • Scilab (Scilab)
  • MayaVi (BSD)
  • Maxima (GPL)

Gnuplot

Gnuplot çok iyi bir görselleştirme aracıdır, 1986'dan beri mevcuttur. Gnuplot grafiği yoksa kağıdı okumak zordur. Gnuplot komut satırı yönlendirmeli olsa da, sürekli olarak gelişmektedir ve artık etkileşimli olmayan birçok uygulamayı destekleyebilir.Örneğin, bir GNU Octave çizim motoru olarak kullanılabilir.

Gnuplot çok taşınabilirdir ve UNIX®, Microsoft® Windows®, Mac OS® X ve diğer birçok platformda çalışabilir. Postscript'ten yeni PNG'ye kadar son derece geniş bir çıktı formatları yelpazesini destekleyebilir.

Gnuplot toplu modda çalıştırılabilir.Bir grafik oluşturmak için bir komut betiği sağlar.Ayrıca etkileşimli olmayan modda çalışır.Bu, çizim efektlerini anlamak için özelliklerini denememizi sağlar.

Gnuplot'ta bulunan UNIX matematik kitaplığına karşılık gelen standart bir matematik kitaplığı vardır. Fonksiyonun parametreleri tamsayı, gerçek ve karmaşık türleri destekler. Matematik kitaplığı radyan veya açı olarak yapılandırılabilir (varsayılan radyan).

Çizim için, gnuplot 2 boyutlu grafikler oluşturmak için plot komutunu kullanabilir veya 3 boyutlu grafikler oluşturmak için (2 boyutlu projeksiyon olarak) splot komutunu kullanabilir. Plot komutunu kullanarak, gnuplot dikdörtgen bir iki boyutlu koordinat sisteminde çalışabilir. Splot komutu, varsayılan olarak Kartezyen koordinat sistemini kullanır, ancak aynı zamanda küresel veya silindirik koordinat sistemini de destekleyebilir. Ayrıca grafikte kontur çizgileri de çizebilirsiniz (aşağıdaki Şekil 1'de gösterildiği gibi). Paletler veya yüzey haritaları olarak paletler kullanılarak haritalanan 3-D ve 4D veri çizimini destekleyebilen yeni bir pm3d çizim stili var.

Aşağıdaki basit bir gnuplot örneğidir, kontur çizgileri ve gizli çizgileri ortadan kaldırılmış 3 boyutlu bir grafik verir. Liste 1, kullanılan gnuplot komutunu gösterir ve Şekil 1, elde edilen grafiksel sonuçları gösterir.

Liste 1. Basit gnuplot fonksiyon grafik seti örnekleri 25 eş örnekleri ayarla 26 "3D gnuplot'u test et" başlığı ayarlayın kontur tabanını ayarla hidden3d ofset 1'i ayarla splot günah (sqrt (x ** 2 + y ** 2)) / sqrt (x ** 2 + y ** 2)

Liste 1, gnuplot'un komut setinin ne kadar basit olduğunu tam olarak gösterir. Örnekleme hızı ve çizim yoğunluğu, örnekler ve izoörneklerle belirlenir ve başlık, başlık parametresi ile grafikler için sağlanır. Aynı zamanda temel kontur ve gizli çizgi yok etme özellikleri etkinleştirilir.Son çizim, splot komutu ve matematik kütüphanesinin dahili fonksiyonları kullanılarak oluşturulur. Sonuç, Şekil 1'de gösterilmektedir.

Şekil 1. Gnuplot'un basit bir grafiği

İşlev grafikleri oluşturmanın yanı sıra, gnuplot dosyalarda bulunan grafikleri de iyi bir şekilde çizebilir. Liste 2'de (bu dosyanın kısa bir versiyonu) gösterilen x / y veri çiftini düşünün. Bu dosyada verilen veri çiftleri, iki boyutlu bir uzayda x ve y ekseni verilerini temsil eder.

Liste 2. gnuplot (data.dat) için örnek veri dosyası 8899799876896085 ... 6022

Bu verileri iki boyutlu bir uzayda çizmek ve her veri noktasını bir çizgiyle bağlamak istiyorsanız, Liste 3'te gösterilen gnuplot komut dosyasını kullanabilirsiniz.

Liste 3. Liste 2'deki verileri çizmek için kullanılan Gnuplot betiği set başlığı "Örnek veri grafiği" plot'data.dat '1: 2 t' veri noktası kullanma ', \ Satırlarla 1: 2 t "satır" kullanan "data.dat"

Sonuç, Şekil 2'de gösterilmektedir. Gnuplot'un otomatik olarak eksenin ölçeğini verdiğini unutmayın, ancak grafiğin konumunu işaretlemeniz gerekirse, onu kontrol edebilirsiniz.

Şekil 2. gnuplot'taki veri dosyalarını kullanarak basit çizim

Gnuplot iyi bir görselleştirme aracıdır, çok ünlüdür ve birçok GNU / Linux dağıtımının parçasıdır. Bununla birlikte, temel veri görselleştirme ve sayısal hesaplamalar yapmak istiyorsanız, aradığımız araç GNU Octave olabilir.

GNU Oktav

GNU Octave, temel olarak sayısal hesaplamalar için tasarlanmış yüksek seviyeli bir dildir ve MathWorks tarafından üretilen Matlab ticari yazılımının güçlü ve rekabetçi bir ürünüdür. Octave, gnuplot tarafından sağlanan basit komut setine ek olarak, matematiksel programlama için de zengin bir dil sağlar. Hatta kendi uygulamalarımızı C veya C ++ ile yazabilir ve ardından Octave ile etkileşime girebiliriz.

Octave ilk olarak 1992 yılında kimyasal reaktör tasarım ders kitabı için yardımcı bir yazılım olarak yazılmıştır. Yazar, öğrencilerin Fortran programlarında hata ayıklamadan reaktör tasarım problemlerini çözmelerine yardımcı olmayı umuyor. Sonuç, çok kullanışlı bir dil ve sayısal problemleri çözmek için etkileşimli bir ortamdır.

Octave, etkileşimli olmayan bir komut dosyası modunda veya C ve C ++ dil bağları aracılığıyla çalıştırılabilir. Octave, C diline çok benzeyen çok zengin bir dile sahiptir ve sinyal ve görüntü işleme, ses işleme ve kontrol teorisi tarafından kullanılan bazı özel işlevler dahil olmak üzere büyük bir matematiksel kütüphaneye sahiptir.

Octave, arka uç uygulaması olarak gnuplot kullandığından, gnuplot ile çizilebilecek her şey Octave ile çizilebilir. Octave, hesaplamalar için daha zengin bir dile sahiptir ve birçok bariz avantajı vardır, ancak yine de gnuplot'un bazı sınırlamaları vardır.

Octave-Forge Web sitesinde (SimpleExamples) sağlanan örnekte, bir Lorentz Strange Attractor çizilmiştir. Liste 4, Octave tarafından Cygwin kullanılarak Windows platformunda kullanılan etkileşimli iletişim kutusunu gösterir. Bu örnek, yaygın bir diferansiyel denklem çözücü olan lsode'un kullanımını göstermektedir.

Liste 4. Lorentz Strange AttractorGNU Octave, sürüm 2.1.50'yi işlemek için Octave kullanma Telif hakkı (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 John W. Eaton. Bu ücretsiz bir yazılımdır; kopyalama koşulları için kaynak koduna bakın. KESİNLİKLE HİÇBİR GARANTİ YOKTUR; SATILABİLİRLİK veya BELİRLİ BİR AMACA UYGUNLUK Ayrıntılar için, "garanti" yazın. Bu yazılımı yararlı bulursanız lütfen katkıda bulunun. Daha fazla bilgi için adresini ziyaret edin. Hataları bildir < bug-octavebevo.che.wisc.edu > . > > fonksiyon y = lorenz (x, t) y =; son işlev > > x = lsode ("lorenz" ,, (0: 0.01: 25) '); > > gset parametrik > > gsplot x > >

Şekil 3, Liste 4'teki Oktav kodunun çıktısını göstermektedir.

Şekil 3. Octave kullanılarak çizilen Lorentz grafiği

GNU Octave (gnuplot ile tutarlı), bir sayfada birden çok grafiği işlemek için çoklu yuva özelliğini kullanabilir. Bu özelliği kullanarak, oluşturmak istediğiniz kaç grafik tanımlayabilir ve ardından belirli grafikleri özelleştirmek için alt pencere komutunu kullanabilirsiniz. Alt pencereyi tanımladıktan sonra, kendi grafiklerinizi normal olarak oluşturabilir ve ardından bir sonraki alt pencereye geçebilirsiniz (Liste 5'te gösterildiği gibi).

Liste 5. Octave'de çoklu grafikler oluşturun > > çok yuvalı (2,2) > > alt pencere (1,1) > > t = 0: 0.1: 6.0 > > arsa (t, cos (t)) > > alt pencere (1,2) > > arsa (t, günah (t)) > > alt pencere (2; 1) > > arsa (t, tan (t)) > > alt pencere (2,2) > > arsa (t, tanh (t))

Oluşturulan çoklu görüntü sayfası Şekil 4'te gösterilmektedir. Bu, karşılaştırma ve kontrast için ilgili grafikleri bir arada toplamak için iyi bir özelliktir.

Şekil 4. GNU Octave kullanarak birden çok grafik çizin

Octave'yi gnuplot'u görselleştirme için bir arka plan uygulaması olarak kullanan yüksek seviyeli bir dil olarak düşünebiliriz. Zengin bir matematiksel kütüphane sağlar ve Matlab için iyi bir ücretsiz yedek üründür. Kullanıcılar tarafından konuşma işleme, optimizasyon, sembol hesaplama vb. İçin geliştirilen paketlerle kolayca genişletilebilir. Octave, Debian gibi bazı GNU / Linux dağıtımlarında mevcuttur ve Cygwin kullanılarak Windows ve Mac OS X'te de kullanılabilir.

Scilab

Scilab, sayısal hesaplama ve görselleştirme sağlama açısından GNU Octave'e çok benzer. Scilab, dünyada var olan mühendislik ve bilimsel uygulamalar tarafından kullanılan bir tercüman ve üst düzey bir dildir.

Scilab, 1994 yılında doğdu. Fransız https://mp.weixin.qq.com/cgi-bin/appmsg?t=media/appmsg_editaction=edittype=10appmsgid=503170341token=183721230lang=zh_CN INRIA (Institut national de recherche en informatique et en automatique) ve ENPC (École Nationale des Ponts et Chaussées). 2003 yılından beri Scilab, Scilab Konsorsiyumu tarafından sürdürülmektedir.

Scilab, C ve Fortran gibi üst düzey dillerde yazılan programlarla genişletilebilen geniş bir matematiksel işlevler kitaplığı içerir. Ayrıca veri türlerini ve işlemlerini aşırı yükleyebilme özelliğine sahiptir. Entegre bir yüksek seviyeli dil içerir, ancak bu dil C dilinden biraz farklıdır.

Scilab'da 2 boyutlu ve 3 boyutlu grafik animasyon, optimizasyon, istatistikler, simgeler ve ağlar, sinyal işleme, karma dinamik sistem simülasyonu ve simülasyon ve topluluğun katkıda bulunduğu diğer birçok işlev sağlayan birçok araç takımı vardır.

Scilab çoğu UNIX sisteminde kullanılabilir ve daha yeni Windows işletim sistemlerinde de kullanılabilir. GNU Octave gibi, Scilab da iyi belgelere sahiptir. Bir Avrupa projesi olduğu için İngilizce dışındaki dillerde yazılmış birçok belge ve makale de bulabilirsiniz.

Scilab'ı başlattıktan sonra, onunla etkileşime girebilmemiz için bir pencere açılacaktır (Şekil 5'te gösterildiği gibi).

Şekil 5. Scilab ile Etkileşim

Bu örnekte, 0 ila 2PI (adım boyutu 0.2) arasında değişen bir değere sahip bir vektör (t) oluşturulur. Ardından 3 boyutlu bir grafik oluşturulur (z = f (x, y) veya xi, yi noktalarında bir yüzey kullanılarak). Şekil 6, oluşturulan grafiği göstermektedir.

Şekil 6. Şekil 5'teki komutla oluşturulan Scilab diyagramı

Scilab, grafikleri minimum karmaşıklıkla çizebilen birçok kitaplık ve işlev içerir. Aşağıda basit bir üç boyutlu histogram oluşturmanın bir örneği verilmiştir:

- > hist3d (5 * (rand (5,5));

İlk olarak rand (5,5), bazı rasgele değerler içeren (maksimum değeri 5) 5,5 boyutunda bir matris oluşturacaktır. Bu matris hist3d fonksiyonuna aktarılır. Oluşturulan histogram Şekil 7'de gösterilmektedir.

Şekil 7. Rastgele üç boyutlu bir histogram oluşturun

Scilab ve Octave çok benzer. Hepsinin toplum katılımı için harika bir temeli var. Scilab, Fortran 77 ile yazılırken, Octave C ++ ile yazılmıştır. Octave, görselleştirme elde etmek için gnuplot kullanır; Scilab kendi kütüphanesini sağlar. Matlab'a çok aşina iseniz, Octave iyi bir seçimdir çünkü Matlab ile uyumluluk sağlamaya çalışır. Scilab birçok matematiksel fonksiyon içerir, bu nedenle sinyal işleme için çok uygundur. Hala hangi aracı kullanacağınızdan emin değilseniz, hepsini deneyebilirsiniz. Hepsi iyi araçlardır ve bunları farklı görevleri yerine getirmek için kullanabilirsiniz.

MayaVi

MayaVi, Sanskritçede sihirbaz anlamına gelir ve Python'u grafiksel gösterim için güçlü bir görselleştirme araç takımı (VTK) ile birleştiren bir veri görselleştirme aracıdır. MayaVi ayrıca Tkinter modülü kullanılarak geliştirilmiş bir grafik kullanıcı arabirimi (GUI) sağlar. Tkinter, genellikle Tcl ile kullanılan bir Tk arayüzüdür.

MayaVi başlangıçta bir görselleştirme aracı olarak Hesaplamalı Akışkanlar Dinamiği (CFD) için geliştirilmiştir. İnsanlar diğer alanlarda faydasını fark ettiğinde, genel bilimsel bir veri görselleştirme aracı olarak yeniden tasarlandı.

MayaVi'nin arkasındaki sihir VTK'dan geliyor. VTK, veri görselleştirme ve görüntü işleme için açık kaynaklı bir sistemdir ve bilim dünyasında yaygın olarak kullanılmaktadır. VTK, Tcl / Tk, Java programlama dili ve Python artı C ++ kitaplığı tarafından sağlanan komut dosyası arabirimleri aracılığıyla birçok işlevi kapsüller. VTK, UNIX, Windows ve MAC OS X dahil olmak üzere birçok işletim sisteminde taşınabilir.

VTK'yı çevreleyen MayaVi kabuğu, diğer Python programlarından bir Python modülü olarak içe aktarılabilir ve komut dosyaları Python yorumlayıcısı aracılığıyla yazılabilir. MayaVi tarafından sağlanan tkinter GUI, filtrelerin yapılandırılmasına ve uygulanmasına ve ayrıca görselleştirmeye dayalı bazı aydınlatma efektlerinin oluşturulmasına izin verir.

Şekil 8, Windows platformunda MayaVi kullanılarak yapılan bir görselleştirme örneğidir.

Şekil 8. MayaVi / VTK ile görüntülenen 3 boyutlu görselleştirme (kardiyak CT taraması görüntüsü)

MayaVi, VTK'yı Python komut dosyası dilinde genişletmenin ilginç bir örneğidir.

Maxima

Maxima sembolik ve sayısal bir hesaplama programıdır, Octave ve Scilab'ın kanıdır. Maxima'nın ilk geliştirme ekibi 1870'lerde MIT'de (Massachusetts Institute of Technology) başladı ve halen devam ediyor. Orijinal versiyona (bir bilgisayar cebir sistemi) DOE Macsyma adı verildi ve daha sonra geliştirilen daha iyi bilinen uygulamaların (Mathematica gibi) önünü açtı.

Maxima, bir dizi istenen işlevi (matematik, analitik doğrusal sistemler ve doğrusal olmayan denklem kümeleri gibi) ve sembolik hesaplama yetenekleri sağlar. Ayrıca Maxima'daki Lisp hakkında bazı ipuçları da bulabilirsiniz (referanslar, haritalar ve uygulama gibi işlevlerden). Maxima Lisp'de yazılmıştır ve Lisp kodu bir Maxima oturumunda çalıştırılabilir.

Maxima, hiper metne dayalı çok iyi bir çevrimiçi yardım sistemine sahiptir. Örneğin, belirli bir Maxima işlevinin nasıl çalıştığını anlamak istiyorsanız, basitçe örnek yazabilirsiniz (desolve) ve birçok örnek kullanım sağlayacaktır.

Maxima ayrıca kurallar ve kalıplar gibi bazı ilginç özelliklere de sahiptir. Bu kurallar ve kalıplar, ifadeleri basitleştiren programlar tarafından kullanılır. Kurallar, değişmeli ve değişmeli olmayan cebirde kullanılabilir.

Maxima, Octave ve Scilab'a çok benzer: yorumlayıcı, kullanıcıyla etkileşimde bulunmak için kullanılabilir ve sonuçlar doğrudan aynı pencerede sunulur veya başka bir pencerede görüntülenebilir. Şekil 9'da basit bir 3 boyutlu grafik istenmektedir.

Şekil 9. Maxima ile Etkileşim

Oluşturulan grafik Şekil 10'da gösterilmektedir.

Şekil 10. Şekil 9'daki komutla oluşturulan Maksimum grafik

Görünüm

Bu makalede çeşitli açık kaynak GNU / Linux görselleştirme araçları tanıtılmaktadır. Diğer yararlı araçlar arasında Gri, PGPLOT, SciGraphica, plotutils, NCAR Graphics ve ImLib3D bulunur. Bunların hepsi açık kaynak kodludur, bu da nasıl çalıştıklarını görebileceğiniz anlamına gelir; isterseniz onları değiştirebilirsiniz. Ek olarak, iyi bir grafik simülasyon ortamı arıyorsanız, lütfen OpenGL ile kullanılan Open Dynamics Engine'e (ODE) bir göz atın.

Özel ihtiyaçlar, hangi aracın kullanım için en uygun olduğunu belirler. Birçok görselleştirme algoritmasına sahip güçlü bir görselleştirme sistemi kullanmak istiyorsanız, MayaVi aradığınız araçtır. Görselleştirme yeteneklerine sahip sayısal hesaplamalar için GNU Octave ve Scilab'ın ikisi de çok uygundur. Sembolik hesaplama gücüne ihtiyacınız varsa, Maxima çok iyi bir seçimdir. Son olarak (ama önemsiz değil), ihtiyacınız olan tek şey bazı temel çizim işlevleri ise, gnuplot bu ihtiyacı iyi karşılayabilir.

Son olarak, büyük veriyi öğrenmek istiyorsanız, sınırlı bir süre için ücretsiz materyaller ve kurslar almaktan bahsedeyim.

Nasıl alınır:

Hala eski kurallar

1. Yorum yazıları, kelime sınırı yoktur, tek kelime yeterlidir!

2. Xiaobian hayranı olun!

3. Özel Mesaj Editörü: "Büyük Veri Geliştirme Eğitimi"!

Hepinize teşekkür eder, iyi çalışmalar dilerim! (Öğreticiyi aldıktan sonra, sıkı çalışmalı ve daha fazla pratik yapmalısınız!)

Daha az çabayla büyük verileri analiz etmek için pratik kullanım Hive
önceki
Büyük Veriye Adım Atmak | Linux sistemiyle ilgili bir problemden sonra nasıl kurtarırsınız?
Sonraki
Milyonlarca json ve python komut dosyalarının kullanımı için örnek-ayrıştırma kovanı
Hadoop, 3.x çağını başlattı: Eski büyük veri hegemonu, bulut bilişimin zorluklarına nasıl yanıt veriyor?
Windows sistemi ve Linux sistemindeki "büyük veri kuru malları" için jar paketi ve içe aktarma ifadesinin analizi
"Linux'u bilmiyorsam ne kadar korkunç" Gelişmiş teknoloji geliştirme: Bu temelde öğrenilmesi gereken bir beceridir
2020 büyük veri öğrenimi için olmazsa olmaz
Yıllık maaşı 500.000 olan büyük bir veri geliştirme mühendisi işe alamaz mısınız? İnanıyormusun?
Big Data Learning Route 2020 Sürümü
Hadoop dosya sıkıştırma savaşı (komut dosyaları ve kaynak kodu dahil)
Gerçeğin bıçağı
ToB Industry Investment Logic'ten Alıntı
YARI: Küresel silikon levha geliri geçen yıl% 2 düştü | Bir haftalık sektör verileri özeti
Büyük küresel yarı iletken şirketlerinin en son finansal raporlarının özeti
To Top