Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Hazırlayan: Hakan KUTUCU

Benzer bir sunumlar


... konulu sunumlar: "Hazırlayan: Hakan KUTUCU"— Sunum transkripti:

1 Hazırlayan: Hakan KUTUCU
GNUPLOT ÇİZİM PROGRAMI Hazırlayan: Hakan KUTUCU

2 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 bir çok plotformda onu çalıştırabilirsiniz.

3 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 tex formatına da dönüştürebilmektedir.

4 GNUPLOT GnuPlot “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.

5 GNUPLOT-Kurulum Gnuplot yazılımı ücretsiz ve açık kaynak kodlu bir programdır. adresinden ücretsiz indirelebilir. Windows için uygun sürüm gp420win32.zip Programı çalıştırmak için herhangi bir kurulum prosedürü yoktur. “bin” adlı klasördeki “wgnuplot.exe” dosyası çift tıklanır.

6 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)

7 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 log10(x) 10 tabanına göre logaritma alır sqrt(x) x’in karekökünü alır

8 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)

9 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)

10 Eksenlerin Tanımlanması
Aynı şekilde y-ekseninde de sınırlandırma yapabiliriz: plot [-5:7][-2.5:0.5] sin(x),log(x)

11 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.

12 Dosyadan Veri Okumak plot "veriler.txt" using 1:3
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

13 Dosyadan Veri Okumak plot "veriler.txt" using ($1*5):(sin($3))
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))

14 Dosyadan Veri Okumak Birden fazla çizim yapmak istenirse;
plot "veriler.txt" using 1:2 with lines,"veriler.txt" using 1:3 with lines

15 Dosyadan Veri Okumak test
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

16 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

17 Grafiğe Başlık Ekleme set title “Yillik Uretim Grafigi" replot

18 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"

19 Eksenleri Çizdirmek set zeroaxis plot sin(x),log(x)

20 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

21 Grid Ekleme set grid;replot

22 Eksenlerdeki Tikleri Artırmak
set xtics 1;replot

23 Terminal Türleri set terminal
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

24 Terminal Türleri set term postscript set output "rapor.eps"
Ö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

25 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.

26 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.

27 Postscript Parametreleri-2
Kullanım Çıktı a^x ax a_x abc Türkçe karakterler için

28 Örnek Kullanım

29 Postscript Parametreleri-2
set term postscript 20 color enhanced set output “rapor.eps” set title “Y{/=15I}ll{/=15I}k ~U{.8..}retim Grafi~g{.4\\~}i” set xlabel “Zaman” set ylabel “~U{.8..}retim” replot

30 Gif Olarak Kaydetmek set term gif large set output "rapor.gif"
plot "veriler.txt" using 1:($2*$3) w linesp pt 20

31 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”

32 Multiplot set 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

33 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

34 Multiplot set multiplot layout 2,2 title “Grafikler"
Bu komut sayfayı 2x2 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

35 Multiplot set title "Cizim-2" multiplot> plot x**3 notitle
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

36 Multiplot set title "Cizim-3“
3. grafiği dosyadan veri okutarak çizdirelim. set title "Cizim-3“ plot "veriler.txt" using 1:2 with linesp ps 2 pt 5 notitle

37 Multiplot set title "Cizim-4“
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"


"Hazırlayan: Hakan KUTUCU" indir ppt

Benzer bir sunumlar


Google Reklamları