Tableau Ders 51: Performans Kaydı

Tableau’da workbook’larınızı hazırlarken sorgularınızın ne kadar sürede geldiğini öğrenebilirsiniz.

Ekrana sürükleyip bıraktığımız her şey arka tarafta bir SQL sorgusu çalıştırır. Dolayısıyla ekrana sürükleyip bıraktığımız her şeyi sorgu olarak düşünebiliriz.

Tableau, bize grafiklerimizi yaparken arka tarafta çalışan sorguların ne kadar sürede çalıştığını gösteren bir workbook (PerformanceRecording) hazırlar. Böylece sizin neyi yavaşlattığını, hangi sorgunun uzun sürdüğünü anlayabilirsiniz.

Nasıl olduğunu görmek için Tableau’nun içindeki örnek Sample – Superstore verisine bağlanarak başlayalım.

Grafiği hazırlamadan önce Help -> Setting and Performance -> Start Performance Recording diyerek performans workbook’u oluşturmaya başla diyelim.

performance

Şimdi aşağıdaki örnek grafiğimizi yapalım. İsterseniz siz farklı bir grafikte yapabilirsiniz.

perform

Grafiği yaptıktan sonra yine aynı yerden  Help -> Setting and Performance -> Stop Performance Recording diyelim ve performans workbook’un oluşmasını bekleyelim. Workbook oluşturulunca otomatik açılacaktır.

Oluşan workbook aşağıdaki resimde gördüğünüz gibidir. Buradan ilgili sheet’lere giderek detaylı incelemeniz mümkün. Zaman aralığı filtresini, slider’dan ayarlayabilirsiniz. Böylece o kadar saniye ya da dakika süren işlemleri aşağıda görebilirsiniz.

performancerecording

İlk grafikteki Executing Query‘ye tıklayalım ve Events Sorted by Time grafiğine gelerek ilgili Executing Query’nin üzerine gelelim. Elapsed Time ile sorgunun çalışmasının 0.03 saniye sürdüğünü görüyoruz.

elapsed

Üzerine geldiğimiz Executing Query’nin üstüne tıklarsak hemen altındaki Query sheeti açılıyor burada da çalışan sorguyu görebiliyoruz.

Sorgunun tamamını Query sheet’ine giderek görebilirsiniz.

Aşağıdaki şekilde Query sheet’ine giderek Standard yazan kısmı Entire View yaptım ve yazıyı ekrana sığdırdım.

Gördüğünüz gibi ürün adını, karlılığı ve segment bilgisini group by yapan sorgu aşağıdaki şekilde ekrana geliyor.

sorgu.png

Eğer sorgu ekrana sığmazsa yazının üzerine sağ tıklayarak View Data diyebilirsiniz. Buradan Copy diyerek sorguyu kopyalayabilirsiniz.

viewdata.png

Şuan excel datasından yaklaşık 10.000 satırlık veriyle çalıştığımız için yavaş çalışma söz konusu değildi fakat sizi yavaşlatan örneğin bir filtreniz ise performans kaydını başlatıp filtrenizi çalıştırdıktan sonra performans kaydını durdurarak arka plandaki sorguyu detaylı inceleyebilirsiniz.

Reklamlar

Tableau Ders 50: Excel’e Bağlanırken SQL Nasıl Yazılır?

Veri kaynağı olarak veritabanı kullanıyorsanız veri kaynağına bağlandığınızda SQL yazma seçeneği otomatik gelecektir fakat excel gibi bir dosya formatı kullanıyorsanız veri kaynağınıza bağlandığınızda SQL yazma seçeneği otomatik gelmeyecektir.

Tableau’nun içindeki örnek Sample – Superstore verisine bağlanarak başlayalım.

Tableau’yu açtığınızda karşınıza gelen giriş sayfasından sol üst tarafta Excel’i seçelim ve dosyaya bağlanırken Open’ın yanındaki minik ok’a tıklayarak Open with Legacy Connection diyelim.

legacy

Aşağıda gördüğünüz şekilde New Custom SQL seçeneği gelmiş olmalı. Artık buraya çift tıklayarak açılan ekranın içerisine SQL kodunuzu yazabiliriz.

customsql   İsterseniz en üstteki menüden Data -> Convert to Custom SQL diyerek veri modelinizi direk SQL koduna da çevirebilirsiniz.

convert    Not: Hemen altında gördüğünüz Assume Referential Integrity derseniz grafikleri yaparken ekrana attığınız alan hangi join’leri kullanıyorsa yalnızca o join’leri çalıştırdığı için daha hızlı bir performans sağlayabilirsiniz. Veri modelinizin buna uygun olduğundan emin değilseniz sonuçlarınızı kontrol ederek ilerleyebilirsiniz. Ayrıntılı bilgi için buraya tıklayın.

Şuan da Convert to Custom SQL’i seçtiğimizde aşağıdaki şekilde karşımıza Orders tablosundan tüm alan isimlerini çektiğimiz SQL kodları gelecektir.

sql1

Burada hangi alanı nasıl kullanmak istiyorsanız SQL’ini yazabilirsiniz. Preview Results derseniz yazdığınız SQL’in sonuçlarını ekranda görebilirsiniz.

Tableau Ders 49: Grafik Tipleri

Temel Grafik Tipleri

Bar                                      Map                                 Heatmap                         Scatterplot

Line                                    Scatterplot                        Treemap                         Crosstab

Pie                                       Bubble                              Bullet                             Highlight Table

Area                                    Gantt                                 Histogram                      Stacked Bar

Filled Map                          Symbol Map                     Word Cloud                    Box and Whisker Plot


Özel Grafik Tipleri (Orta Seviye)

Waffle                                  Lolipop                              Waterfall                               Candlestick

Bollinger Bands                   Control                               Dumbbell                             Stream

Bump                                    Pareto                                Hexbins                                Cartogram

Dumbbell                              Horizon                             Connection Map                   Venn Diagram


Özel Grafik Tipleri (İleri Seviye)

Arc                                        Radar                                 Radyal Bar                            Spiral Plot

Gauge                                   Sankey                               Radyal Column                      Hive Plot

Chord                                    Sunburst                            Radyal Pie Gauge                   Polar

Coxcomb                              Network                             Tree Diagram                         Ternary

 
Tableau’da deneyerek grafik tiplerini yukarıdaki şekilde gruplandırdım. Gruplandırırken grafiklerin, çeşitli veriler üzerinde kullanılabilirliğini göz önünde bulundurdum.

İleri düzey grafikleri yapabilmek için ürünü iyi bilmek dışında oldukça iyi bir matematik bilgisi gerekiyor. Tabii ki tüm hesaplamaları sizin yazmanıza gerek yok. İnternetten bu hesaplamalara ulaşarak kendi veriniz üzerinde de uygulayabilirsiniz.

Tableau Public’teki çalışmalarımı görmek için buraya, yukarıdaki grafiklerin örneklerini bir arada görmek için buraya tıklayabilirsiniz.

Tableau Ders 48: Waffle Chart

Waffle Chart nedir, nerelerde kullanır bir bakalım.

Yüzdesel gösterimler için Waffle grafikler mükemmeldir! İlk bakışta anlaşılır ve yapımı oldukça kolaydır.

Bir şartla -> Göstereceğiniz KPI yüzdesi 100’ü aşıyorsa kullanmanızı önermem çünkü tablo 100’lük olarak tasarlanmıştır.

Data: Sample – Superstore ve Waffle

Pekala bu iki veriyle ne yapacağımıza bir bakalım.

Data Blending yaparak iki veri kaynağını harmanlayacağız.

Waffle verisi, 10×10 toplamda yüz adet şekli oluşturmaya yarayan excel dosyası.

Superstore verisine bağlanarak başlayalım.

Adım 1: Kar oranı (Profit Ratio) için bir hesaplama yazalım: SUM([Profit])/SUM([Sales])

Adım 2: Aşağıdaki şekilde yeni bir veri kaynağı ekleyelim ve excel dosyası olarak paylaştığım waffle verisine bağlanalım.

Screenshot_13.png bağlandıktan sonra yandaki şekilde diğer veri kaynağı ekranda görünecektir.

Adım 3: Birincil veri kaynağı olarak waffle verisini kullanacağız. Waffle verisine tıklayalım ve bir hesaplama alanı açarak aşağıdaki şekilde hesaplamayı yazalım.

screenshot_147.png

Adım 4: Bu hesaplamayı, Marks -> Color içerisine sürükleyip bırakalım. Renkleri değiştirmek için Color -> Edit Color diyerek False’a açık gri, True’ya istediğimiz canlı bir rengi verelim.

Adım 5: Superstore verisine giderek Region ve Profit Ratio’yu, Marks -> Details içerisine atalım.

Gördüğünüz gibi Superstore verisinin ve o veri kaynağından kullandığımız alanların üzerine kırmızı bir ok işareti geldi. Bu, iki veri kaynağını harmanlayarak kullandığımız anlamına gelir.

Şuanda birincil veri kaynağımız Waffle, ikincil veri veri kaynağımız Superstore verisidir.

Adım 6: Marks’daki Region’un üzerine sağ tıklayalım ve Show Filter diyerek Central bölgesini seçelim.

Adım 7: Column’a sağ tıklayarak Columns’a sürükleyip bırakalım ve en üstteki Column’ı seçelim. Aynı şekilde Row’u da en üstteki Row seçerek Rows’a sürükleyip bırakalım.

Screenshot_12

Adım 8: Marks’tan grafik tipini Circle, Square ya da Shape seçebilirsiniz.

Şekli oluşturduğumuza göre o bölgedeki kar oranını ekrana dinamik olarak yazdıralım.

Adım 9: Grafikten bir şekil seçerek sağ tıklayalım ve Annotate -> Mark diyelim. <Sample – Superstore.AGG(Profit Ratio)> hariç diğer bilgileri silelim ve buradan istediğimiz şekilde formatlayalım. Ekrandaki Mark kutusunu formatlamak için sağ tık format Shading’i ve Line’ı, None yapalım.

Adım 10: Son olarak Marks -> Tooltip‘e gelerek Show tooltips‘teki tiki kaldıralım. Böylece grafiğin üzerine geldiğimizde çıkan bir baloncuk olmayacak.

Screenshot_19999.png

Yukarıdaki grafiği elde ettiysek Central yazan sheet’e sağ tık Duplicate diyerek 4 bölge için bu sheet’i kopyalayabiliriz ve aynı şekilde kar oranı yüzdelerini gösterebiliriz.

Her bölge için farklı renk ve farklı şekiller vermek mümkün. Bunun için yapmanız gereken tek şey Region’u sürükleyip Marks’taki Color‘ın içerisine bırakmak ve grafik tipini Shape seçmek.

Ta Taa

2140980-e1529074826630.png

Tableau Ders 47: DNA Chart

Dna chart nedir, nerelerde kullanılır?

Dna chart –Dumbbell ya da Barbell chart olarakta bilinir- iki ya da daha fazla veri noktası arasındaki değişimi göstermek için kullanılan özel bir grafik tipidir.

Oldukça etkili ve anlaşılması kolay bir grafiktir.

Örnek için yine Tableau’nun içerisinde bulunan örnek Sample – Superstore datasını kullanacağız.

En çok kullanılan gösterim olarak satışları yıl bazında Dna grafiğin üzerinde nasıl göstereceğimize bir bakalım.

Adım 1: Kategori ve alt kategoriyi (Category ve Sub-Category), Rows’a alalım.

Adım 2: Satışa çift tıklayarak -Sum(Sales) olarak- Columns’a alalım.

Adım 3:  Marks‘ın içerisinden birinci satış grafiğini Line, ikinci satış grafiğini Circle seçelim.

Adım 4: Columns’taki ikinci satışa sağ tık Dual Axis yapalım ve satış eksenlerinden birine tıklayarak Synchronize Axis diyelim. (İsterseniz satış eksenlerinden birinin üzerine sağ tıklayarak Show Header ile bir satış eksenini yok edebilirsiniz.)

Adım 5: Order Date’i, Marks -> All -> Color‘ın içerisine sürükleyip bırakalım. Tarihi, yıl olarak kullanacağız.

Adım 6: Marks‘daki Line grafik yaptığımız ilk satışa gelerek Path‘in içerisine sipariş tarihini (Order Date) sürükleyip bırakalım. Order Date’in YEAR olmasına dikkat edelim. (İsterseniz Color’ın içindeki yıl bilgisini direk kullanmak için ctrl tuşuna basarak Order Date’i, Path’in içerisine sürükleyebilirsiniz).

Adım 7:  YEAR(Order Date)’e sağ tıklayarak Show Filter diyelim. Buradan son iki yılı seçelim.

Gördüğünüz gibi ekranda yalnızca iki daire kaldı. 2018 ve 2017. Yıl bilgisini, Color‘ın içerisine attığımız için Tableau otomatik olarak her yıla bir renk verdi. Color -> Edit Color diyerek isterseniz bu renkleri değiştirebilirsiniz.

Adım 8: Marks‘taki Circle grafik yaptığımız ikinci satışa gelerek Size‘dan dairelerin boyutunu biraz büyütelim.

Adım 9: Yılları ekrana yazdırmak için Circle olan satışın içindeki Label‘a, YEAR(Order Date)’i sürükleyip bırakalım.

Adım 10: Label‘a tıklayarak yazının format ayarlarını yapalım. Alignment‘tan Horizontal’ı orta (center), Vertical’ı en üst (top) seçelim.

ve Ta Taa

Screenshot_12140851.png

Dna chart’ın farklı farklı bir çok kullanım örneğini internette bulmak mümkün. Bu şekilde boyut ve ölçütlerinizi değiştirerek sizde kendi raporlarınızda Dna chart’ı kullanabilirsiniz.

Tableau Ders 46: Tableau Python Bağlantısı

Daha önce Tableau’da R bağlantısının nasıl yapıldığından ve R kodlarının nasıl çalıştırıldığından sizlere bahsetmiştim.

Göz atmak için buraya tıklayabilirsiniz.

Bugün de size Tableau’da Python bağlantısını nasıl yaptığımızdan bahsedeceğim.

İşin Tableau tarafı, R bağlantısını yaptığımız ve kodları kullanım şekliyle tamamen aynı.

Python tarafına bakalım.

Github’tan buraya tıklayarak TabPy-master.zip dosyasını indirin.

Screenshot_6.png

Şimdi zip dosyasındaki TabPy-master klasörünü çıkartın.

setup.bat dosyasını çalıştırın.

Hata mesajı alırsanız ok diyin ve komut ekranını kapatmadan bekleyin. Eğer komut ekranı kapanırsa bat dosyasını tekrar çalıştırın.

Böylece, TabPy başlatılacak ve 9004 portu kullanılacaktır.

Yüklenmesi biraz zaman alabilir.

Screenshot_5.png

Yukarıdaki mesajı aldıysanız Python server başarıyla yüklenmiş ve çalışıyor demektir.

Artık Tableau tarafına geçebiliriz.

Verinize bağlandıktan sonra Tableau’da bağlantıyı kurmak için en üst sekmeden Help -> Setting and Performance -> Manage External Service Connection diyoruz.

Screenshot_7.png

Açılan ekrandan aşağıdaki şekilde bağlantı bilgilerini giriyoruz. Test Connection dediğimizde yanında gördüğümüz bağlantı başarılı şeklinde bir bildirim çıkıyor.

Screenshot_3.png

Ok diyerek Pyhton kodlarını yazmaya başlıyoruz.

Biliyorsunuz kodları hesaplama alanının içine yazıyoruz. Hesaplama alanı açmak için tekrar üst sekmeden Analysis -> Create Calculated Field diyebilirsiniz ya da en soldaki Dimensions’ın yanındaki küçük ok’a basarak hesaplama alanını açabilirsiniz.

Şimdi, bağlantıyı kurduktan sonra size bir örnek göstermek istiyorum bunun için klasik Tableau’nun Sample – Superstore datasına bağlanıyorum.

Screenshot_4.png

Kod;

SCRIPT_BOOL("lst= []

for i in _arg1 :

lst.append(i>0)

return lst"

,SUM([Profit]))

Kar 0’dan büyükse True değilse False dönecek şekilde script’i yazıyorum.

Hesaplamayı, Color’ın içerisine sürükleyip bırakıyorum.

Örnek olarak alt kategori başına karlılığı bar grafik üzerinde aşağıdaki gibi gösterdim. 0’dan yüksekse kar turuncu, düşük ise karlılığı lacivert olarak görüyoruz.

Screenshot_9.png

İşte bu kadar!

Tableau Ders 45: Javascript ile Yapılan Grafikleri Çalıştırma

network.gif

Dashboard ekranındaki “Web Page” özelliğinden daha önce sizlere bahsetmiştim. Bu şekilde javascript ile yaptığınız grafikleri linkleyerek, Web Page özelliğiyle aynı Dashboard’ta göstermek mümkün. Dashboard Actions’ları kullanarak raporları birbiriyle iletişime geçirebilirsiniz.

Örneği incelemek için buraya tıklayın.