GNUPLOT ZM PROGRAMI Hazrlayan Hakan KUTUCU GNUPLOT Grselletirme
- Slides: 37
GNUPLOT ÇİZİM PROGRAMI Hazırlayan: Hakan KUTUCU
GNUPLOT • Görselleştirme, herhangi bir problemin sonuçlarını analiz etmek ve göstermek için veri işleme sonucunda yapılan önemli bir unsurdur. • Taşınabilir bilimsel bir görselleştirme programıdır. • Platform bagımsızdır çünkü basta UNIX, IBM OS/2, MS Windows, DOS, Macintosh, VMS, Atari olmak üzere çalıştırabilirsiniz. bir çok plotformda onu
GNUPLOT • Gnuplot fonksiyonların ve verilerin grafigini komut vererek çizen bir yazılımdır. • Özellikle eps ve ps formatlarında görselleştirme yaptığı için Matematikçiler için idealdir. • Latex için grafikleri dönüştürebilmektedir. tex formatına da
GNUPLOT • Gnu. Plot “case sensitive” bir programdır. (Büyük harflerle yazılan komutlar çalışmayacaktır. ) • Komutlar birden fazla parametre içerebilirler. • Bir satıra birden fazla komut yazılabilir. Komutlar noktalı virgül (; ) ile ayrılmalıdır.
GNUPLOT-Kurulum • Gnuplot yazılımı ücretsiz ve açık kaynak kodlu bir programdır. • http: //www. gnuplot. info/ adresinden ücretsiz indirelebilir. • Windows için uygun sürüm gp 420 win 32. zip • Programı çalıştırmak için herhangi bir kurulum prosedürü yoktur. • “bin” adlı klasördeki “wgnuplot. exe” dosyası çift tıklanır.
GNUPLOT ile Çizim Yapmak • Gnuplot’un içinde tanımlı gelen, temel fonksiyonlar vardır. Örnegin sin(x) fonksiyonu bunlardan biridir. Eger bu fonksiyonun grafigini çizmek istersek verecegimiz komut en basit haliyle: plot sin(x)
Tanımlı Bazı Fonksiyonlar • abs(x) mutlak deger alır • cos(x), sin(x), tan(x) • cosh(x), sinh(x), tanh(x) • acosh(x), asinh(x), atanh(x) • ceil(x) x’den büyük en küçük tamsayıyı verir • exp(x) ex isleminin sonucunu verir • floor(x) x’den küçük en büyük tamsayıyı verir • int(x) x’in tam kısmını verir • log(x) dogal logaritma alır • log 10(x) 10 tabanına göre logaritma alır • sqrt(x) x’in karekökünü alır
GNUPLOT ile Çizim Yapmak • Birden fazla çizim yapmak istiyorsak, fonksiyonlar birbirlerinden virgül isareti ile ayrılır. • Örnegin log(x) ve sin(x) çizimi için yazılacak komut: plot sin(x), log(x)
Eksenlerin Tanımlanması • Fonksiyonun çizim aralığının otomatik olarak seçildigine dikkat edelim. • Bunu istersek değiştirmek istersek, örnegin az önceki çizimi x ekseni üzerinde -5 ile 7 aralığında çizmek istersek, verecegimiz komut: plot [-5: 7] sin(x), log(x)
Eksenlerin Tanımlanması • Aynı şekilde y-ekseninde de sınırlandırma yapabiliriz: plot [-5: 7][-2. 5: 0. 5] sin(x), log(x)
Dosyadan Veri Okumak plot “veriler. txt” • Bu komut "veriler. txt" adlı dosyanın içindeki iki sütunun ilkini x değerleri ikincisini de y değerleri olarak dikkate alır ve çizim yapar.
Dosyadan Veri Okumak • Eğer veri dosyası içinde ikiden fazla sütun varsa, bu durumda hangi sütunlarla ilgilendiğimizi belirtmemiz gerekir. • Aşağıdaki komutta, x değerlerinin birinci, y değerlerinin ise üçüncü sütunda olduğu belirtilmiştir. plot "veriler. txt" using 1: 3
Dosyadan Veri Okumak • Bazen dosyadaki verileri dogrudan çizdirmek yerine, bunları bir işleme tabi tutup elde edeceğimiz sonuçlara göre çizim yapmak isteyebiliriz. Bu durumda sütunların degişken olarak anlaşılabilmesi için başlarına $ işareti yazılması gereklidir. plot "veriler. txt" using ($1*5): (sin($3))
Dosyadan Veri Okumak • Birden fazla çizim yapmak istenirse; plot "veriler. txt" using 1: 2 with lines, "veriler. txt" using 1: 3 with lines
Dosyadan Veri Okumak plot "veriler. txt" using 1: 2 with linesp ps 2 pt 5 lw 3 ps: pointsize pt: pointtype lw: linewidth Desteklenen tüm renkler ve tüm çizim türlerini görüntülemek için; test
Başlık ve Eksen Etiketleri • x ve y eksenlerine etiket vermek için; set xlabel “Zaman” set ylabel “Uretim” • Grafiği tekrar çizmek için; replot
Grafiğe Başlık Ekleme set title “Yillik Uretim Grafigi" replot
Grafikteki Her Data Bloğuna Etiket Eklemek plot "veriler. txt" using 1: 2 w l title "Domates" , "veriler. txt" using 1: 3 w l title "Patates"
Eksenleri Çizdirmek set zeroaxis plot sin(x), log(x)
Etiketleri Kaldırmak set zeroaxis plot sin(x), log(x) Set edilen etiketleri silmek için unset komutu kullanılır. unset xlabel; unset ylabel; unset title
Grid Ekleme set grid; replot
Eksenlerdeki Tikleri Artırmak set xtics 1; replot
Terminal Türleri • Tüm çizimlerimizi su ana kadar bir pencere üzerinde görüntüledik. • Bu pencere gnuplot’un çizim terminali olarak adlandırılır. • İstersek çizimleri farklı türde dosyalar(terminaller) içine de yapabiliriz. • Bu durumda terminali ve çıktıların kaydedileceği dosyanın adını belirtmemiz gerekir. • Gnuplot’un destekledigi terminalleri görebilmek için: set terminal
Terminal Türleri • Önceki komutlarda bizim kullandıgımız terminalin adı "windows"tur. • Örnek: "veriler. txt" dosyasındaki sütunlar ile bir işlem yapıp, sonucu "rapor. eps" adlı dosyaya kaydedelim. set term postscript set output "rapor. eps" plot "veriler. txt" using 1: ($2*$3) w linesp pt 6
Postscript Parametreleri set term postscript 20 color set output "rapor. eps" plot "veriler. txt" using 1: ($2*$3) w linesp pt 6 • 20 punta büyüklüğünü, • color ise renkli olmasını belirtiyor.
Postscript Parametreleri-2 set term postscript 20 color enhanced • “enhanced" seçenegi kullanıldıgı zaman biçimlendirilmiş yazım yapılabilir. • Yani, alt/üst simgeler gibi çeşitli yazımlar gerçeklestirilebilir. • Gnuplot yazılımında olan en büyük problem Türkçe karakterleri desteklemiyor olmasıdır. • Bunu çözmek için ise bu "gelişmiş" yazım formatlamayı kullanabiliriz.
Postscript Parametreleri-2 Kullanım Çıktı a^x ax a_x ax a@^b_c ab c Türkçe karakterler için
Örnek Kullanım
Postscript Parametreleri-2 set term postscript 20 color enhanced set output “rapor. eps” set title “Y{/=15 I}ll{/=15 I}k ~U{. 8. . }retim Grafi~g{. 4\~}i” set xlabel “Zaman” set ylabel “~U{. 8. . }retim” replot
Gif Olarak Kaydetmek set term gif large set output "rapor. gif" plot "veriler. txt" using 1: ($2*$3) w linesp pt 20
Dosya Kaydetme ve Çağırma • Yaptığımız tüm ayarlar, gnuplot programı kapanınca eski haline dönecektir. • Eger çizimlerin nasıl görünecegi ile ilgili çok miktarda değişiklik yaptıysak, bunları bir dosyaya kaydedip, sonraki çalışmada geri çağırmak ayarları eski haline getirir. save “ayarlar. plt” load “ayarlar. plt”
Multiplot • Bir grafik üzerine birden fazla çizim yapmayı görmüstük. • Gnuplot’ta ayrıca belirli sayıda grafik mozaik yapıda birleştirilebilmektedir. • Bunun için "multiplot" özelligi aktif hale getirilmelidir. set multiplot
Multiplot • Bu komut verildikten sonra prompt yerinde artık "gnuplot" degil "multiplot" ifadesi yazılır. • Komuttan sonra açılan boş bir pencere açılacaktır. Bu pencereyi kapatmayınız. • Bu moddan çıkmak istedigimiz zaman ise verecegimiz komut: unset multiplot
Multiplot set multiplot layout 2, 2 title “Grafikler" • Bu komut sayfayı 2 x 2 lik bloklara böler. Her bloğa bir grafik çizilebilir. • Set edilen ayarlar çizilecek tüm grakiler için geçerlidir. set xlabel "X-ekseni" set ylabel "Y-ekseni" set title "Cizim -1" plot 2*sin(x) notitle
Multiplot • Set edilen ayarlar çizilecek tüm grakiler için geçerlidir. • 2. grafiği çizmek için; set title "Cizim-2" multiplot> plot x**3 notitle
Multiplot • 3. grafiği dosyadan veri okutarak çizdirelim. set title "Cizim-3“ plot "veriler. txt" using 1: 2 with linesp ps 2 pt 5 notitle
Multiplot • 4. grafiği dosyadan veri okutarak çizdirelim. set title "Cizim-4“ plot "veriler. txt" using 1: 2 with linesp pt 5 title "1. sutun", "veriler. txt" using 1: 3 with linesp pt 9 title "2. sutun"
- Hakan kutucu
- Hakan kutucu
- Hakan kutucu
- Hakan kutucu
- Hakan kutucu veri yapıları
- Hakan kutucu
- Gnuplot 等高線
- Gnuplot derivative
- Gnuplot matplotlib
- Implicit none
- Gnuplot cygwin
- Resustasyon
- Hakan sevim fen lisesi
- Dr hakan güraslan
- Dr hakan koyuncu
- Hakan tolgay
- Robert hakan
- Hakan kumbasar
- Trabekülasyon artışı
- Anizokromi
- Hakan bayri
- Doç dr hakan arslan
- Håkan linden
- Hakan kızıltoprak
- N nasopalatinus kimin dalı
- Hakan ajanda
- Hakan atalay
- Hakan vargün
- Hakan bor
- Maria montessori lund
- Hakan hacigumus
- Hakan kapucu
- Hakan kulaçoğlu
- Harezm türkçesinin yeni şartlar altındaki devamı
- Hakan hilmi kapucu
- Hakan tureci
- Hakan güzeloğlu
- Blok antrenman nedir