gnuplot
gnuplot | |
Egy ellipszoid 3D-s megjelenítése gnuplottal | |
Fejlesztő | nem ismert |
Első kiadás | 1986 |
Legfrissebb stabil kiadás |
|
Programozási nyelv | C |
Operációs rendszer | Linux, UNIX, Windows és mások |
Állapot | aktív |
Kategória | ábrázoló program |
Licenc | saját szabad licenc (nem GPL- vagy BSD-kompatibilis) |
A gnuplot weboldala |
A Gnuplot egy sokoldalú parancssorvezérelt két- és háromdimenziós függvényrajzoló program. Az összes nagyobb számítógépen és operációs rendszer (Linux, Unix, Microsoft Windows, macOS, FreeDOS, és sok más) alatt használható. A kimenet a képernyőre is valamint rengetegféle képformátumban (EPS, PNG) képes kiadni. 1986-ban jelent meg, kiemelt szerzői közé tartozik Thomas Williams, Colin Kelley, Russell Lang, Dave Kotz, John Campbell, Gershon Elber, Alexander Woo "és sokan mások." A neve ellénere a szoftver nem része a GNU Project-nek.
Tulajdonságok
[szerkesztés]A Gnuplot a kimenetelt közvetlenül meg tudja jeleníteni a képernyőn, vagy különböző formátumú grafikus fájlokban, mint például Portable Network Graphics (PNG), Encapsulated PostScript (EPS), Scalable Vector Graphics (SVG), JPEG és sok más. LaTeX kódokat is képes létrehozni, amelyeket át lehet vinni közvetlenül a LaTeX fájlba, a LaTeX által alkalmazott betűtípusok és képletekhez szükséges jelölések alkalmazásával. A programot lehet interaktívan, és batch mode-ban is használni szkriptek segítségével.
A Gnuplot több különböző adattípust is képes leolvasni, akár a program futása közben más programok által létrehozott adatsorokat is. 2-3D-s körvonalat, paraméteres egyenletet, valamint egy képen több ábrázolást is meg tud jeleníteni egyszerre. Támogatja a különböző lineáris és nem lineáris koordináta-rendszereket, vetítéseket, geografikus és idő szerinti adatok leolvasását és megjelenítését, box plotokat különböző formákban, hisztogramokat, címkéket és más egyénileg meghatározható elemeket a létrehozott ábrán, mint a különböző alakzatok, feliratok, képek, amiket manuálisan, de szkriptek által és a bevitt adatok által is meg lehet határozni.
A program szolgál továbbá szkriptek írásának lehetőségével, loopokkal, függvényekkel, szövegfeldolgozással, változókkal, tetszőlegesen az adatok előre feldolgozásával (általában oszlopokon keresztül), valamint nem lineáris, többdimenziós, többszörösen súlyozott adatok illesztésével is (lásd Görbe illesztés és Levenberg–Marquardt algoritmus).
A Gnuplot forráskód C nyelvben van írva. A moduláris alrendszerek kimenetelre Qt által, wxWidgets, és LaTeX/TikZ/ConTeXt C++ és Lua nyelvben íródtak.
Az alábbi kód a jobb oldalon található ábrát állítja elő:
set title "Some Math Functions"
set xrange [-10:10]
set yrange [-2:2]
set zeroaxis
plot (x/4)**2, sin(x), 1/x
A Gnuplot névre azért esett a választás, hogy elkerülje a hasonlóságot, az akkor már létező "newplot" névre hallgató programmal. E célból eredetileg "llamaplot" és az "nplot" elnevezéseket találták ki számára.
A koronavírus pandémia közben szükségessé vált adatok miatt a program már támogatja az Epidemic napi és heti formátumokat is az 5.4.2-es verzióban. 2021-től elérhetó az 5.5-ös verzió is.
Terjesztési feltételek
[szerkesztés]A Gnuplot neve ellenére nem a GNU Project után lett elnevezve, semmilyen kapcsolatban nem áll vele, és nem használja a GNU General Public License-t. Az eredeti szerzők egy kompromisszum keretei között a "gnu" és a "newplot" összeolvadásában állapodtak meg.
A hivatalos forráskód a programhoz szabadon terjeszthető, de a módosított verziók nem. A gnuplot license lehetővé teszi a programtoldások terjsztését a hivatalosan megjelent verziókkal szemben, opcionálisan a hivatalosan közzétett forráskóddal ellátva. A módosított szoftvereknél a származtatott munkákhoz a kapcsolati információkat kötelező feltüntetni, a technikai segítség elérhetősége érdekében.
A program módosítása engedélyezett, de a teljes módosított forráskód terjesztése nem. A változtatások programtoldásként terjeszthetők tovább a közzétett verziók részeként.
Ezen hátráltató tényező ellenére a Gnuplot széles körben elfogadott és használt számtalan GNU csomag és Linux terjesztések által, a Debian-t és a Fedora-t is beleértve. Az OSI Open Source Definition és a Debian Free Software Guidelines speciálisan engedik a módosított forráskód terjesztéseinek korlátozását, engedéllyel rendelkeznek mind mind a programtoldások, mind a forráskód terjesztésére.
Az újabb Gnuplot modulok támogatják a kettős licenszelésú feltételeket, például Gnuplot + BSD vagy Gnuplot + GPL.
GUI-k és Gnuplotot használó programok
[szerkesztés]Számos third-party programok rendelkeznek grafikus felhasználói inferface-el, melyekkel gráfokat lehet létrehozni a Gnuplot segítségével. Ezek közül néhány:
- gretl, egy statisztikai csomag ökonometriához.
- JGNUPlot, egy Java alapú GUI
- Kayali egy számítógépes algebra-rendszer.
- xldlas, egy régi X11 statisztikai csomag.
- gnuplotxyz, egy régi Windows program
- wxPinter, egy grafikus abrázoló manager a Gnuplot-hoz
- Maxima, ami egy szöveg-alapú számítógépes algebra rendszer, mely önnmagában több third-party itself GUI-val rendelkezik.
Egyéb Gnuplotot hazsnáló programok:
- GNU Octave, egy matematikai programozó nyelv
- statist, egy terminál-alapú program
- gplot.pl ,ami egyszerűbb parancssor interface-t biztosít
- feedgnuplot mellyel tárolt és valós idejű adatokat ábrázolhatunk
- ElchemeaAnalytical, an impedance spectroscopy plotting and fitting program, melyet a DTU Energy fejlesztett
- Gnuplot add-in for Microsoft Excel
- Calc, a GNU Emacs kalkulátor
Programozási és alkalmazási interface-ek
[szerkesztés]A Gnuplot több programozási nyelvben is használható adatok megjelenítésére, ezek közé tartozik a Perl (PDL és más CPAN csomagok által), Python (gnuplotlib, Gnuplot-py és SageMath által), R (Rgnuplot ált.), Julia (Gaston.jl ált.), Java (JavaGnuplotHybrid és jgnuplot), Ruby (Ruby Gnuplot ), Ch (Ch Gnuplot), Haskell (Haskell Gnuplot), Fortran 95, Smalltalk (Squeak és GNU Smalltalk) és Rust (RustGnuplot).
A Gnuplot támogatja a pipleline-t, ami általánosságban jellemzi a szkripteket. A szkript irányította grafikákhoz a Gnuplot az egyik legnépszerűbb program.
Gnuplot kimeneteli formátumok
[szerkesztés]A program lehetővé teszi a felhasznál számára az adatok különböző módokon való megjelenítését tárolását:
- A konzolon (output modes dumb, sixel)
- Asztali kijelzőn (output modes Qt, wxt, X11, aquaterm, win, ...)
- Weboldalba beágyazva (output modes SVG, HTML5, PNG, JPEG, animated GIF, ...)
- Dokumentumok feldolgozására tervezett fájl formátumok (output modes PostScript, PDF, cgm, emf, LaTeX variants, ...)
Egyéb
[szerkesztés]- Gnuplot Central Linkek a FAQ-hoz és a letöltési helyekhez
- ↑ GNUPLOT Version 5.0.3 Release Notes (angol nyelven)
- ↑ GNUPLOT Version 5.2 Release Notes (angol nyelven). (Hozzáférés: 2017. szeptember 8.)
- ↑ GNUPLOT Version 5.2.2 Release Notes. (Hozzáférés: 2018. január 16.)
- ↑ http://www.gnuplot.info/ReleaseNotes_5_2_4.html
- ↑ http://www.gnuplot.info/ReleaseNotes_5_2_5.html
- ↑ http://www.gnuplot.info/ReleaseNotes_5_2_6.html
- ↑ GNUPLOT Version 5.2.7 Release Notes. (Hozzáférés: 2019. augusztus 30.)
- ↑ http://www.gnuplot.info/ReleaseNotes_5_2_8.html
- ↑ http://www.gnuplot.info/ReleaseNotes_5_4.html
- ↑ http://www.gnuplot.info/ReleaseNotes_5_4_1.html, 2021. január 28.
- ↑ Gnuplot Version 5.4.2 Release Notes
- ↑ Gnuplot Version 5.4.3 Release Notes
- ↑ Gnuplot Version 5.4.4 Release Notes
- ↑ Gnuplot Version 5.4.5 Release Notes
- ↑ Ethan A Merritt: Gnuplot version 5.4.5 release (angol nyelven), 2022. október 2. (Hozzáférés: 2023. március 11.)
- ↑ Ethan A Merritt: Gnuplot 5.4.6 Release now available for download (angol nyelven), 2023. február 12. (Hozzáférés: 2023. május 23.)
- ↑ Ethan A Merritt: Gnuplot 5.4.7 release (angol nyelven), 2023. május 21. (Hozzáférés: 2023. május 23.)
- ↑ Ethan A Merritt: Gnuplot 5.4.8 release (angol nyelven), 2023. június 7. (Hozzáférés: 2023. június 29.)
- ↑ Ethan A Merritt: Gnuplot 5.4.9 release tarball (angol nyelven), 2023. szeptember 5. (Hozzáférés: 2023. szeptember 6.)
- ↑ Gnuplot 6.0 Release Announcement
- ↑ gnuplot - Browse /gnuplot/6.0.1 at SourceForge.net (English)
- ↑ Gnuplot Version 6.0.2 Release Notes. (Hozzáférés: 2024. december 21.)