Görsel Hesaplamalar: DAX'i Doğrudan Görselin Üzerinde Yazmak
Beceri rehberi

Görsel Hesaplamalar: DAX'i Doğrudan Görselin Üzerinde Yazmak

Hazırlayan: Mindset Institute EditörlüğüGüncellendi: 5 dk okuma

Görsel hesaplama, modele değil görselin kendisine kaydedilen ve yalnızca görselde görünen veri üzerinde çalışan bir DAX hesabıdır. Ölçüden farkını, sık kullanılan işlevleri ve eksen ile sıfırlama kavramlarını örnekle öğreneceksiniz.

Bir bakışta

  1. Görsel hesaplama, görselde saklanır; modelde değil. Yalnızca o görseldeki toplanmış satırlar üzerinde çalışır ve filtre bağlamı ya da ilişki yönetimi gerektirmez.
  2. Kümülatif toplam ve hareketli ortalama gibi hesaplar kısalır. RUNNINGSUM ve MOVINGAVERAGE gibi kısayol işlevleri, uzun pencere işlevi yazımının yerine geçer.
  3. Görselin yapısına başvurulabilir. Eksen ve sıfırlama parametreleri, alan adı yazmadan satır ve sütun yönünde hesap yapmayı sağlar.
  4. Ölçüyü tamamlar, onun yerine geçmez. Birden çok görselde kullanılacak ya da ilişki gerektiren hesaplar için ölçü gerekir.
  5. Bazı görsellerde ve paylaşım biçimlerinde kısıt vardır. Dilimleyici ve Python görseli gibi görseller desteklenmez; panoya sabitleme gibi bazı paylaşımlar da kapalıdır.

Görsel hesaplama nedir?

Görsel hesaplama, Microsoft'un belgesinde bir görselin üzerinde çalışan DAX hesabı olarak tanımlanır. Hesap, modelde değil görselde saklanır ve görselde gösterilen veriyi kullanır. Bu sayede kümülatif toplam, hareketli ortalama ve dönemler arası karşılaştırma gibi hesaplar, filtre bağlamını ve model ilişkilerini düşünmeden yazılır.

Hesabı görselde düzenleme modunda yazarsınız. Düzenleme yüzeyinde görselin bir önizlemesi, DAX ifadesi için bir formül çubuğu ve sonuçları canlı gösteren bir görsel matris bulunur. Yazdığınız hesap alan listesinde ve görselde görünür.

En temel örnek, bir satış tutarının kümülatif toplamıdır.

Kümülatif toplam = RUNNINGSUM([Sales Amount])

Burada Sales Amount alanının görsele eklenmiş olması gerekir; görsel hesap yalnızca görselde bulunan alanlara başvurabilir. Çoğu görsel hesap görsel matrisin her satırı için değerlendirilir; bu yüzden SUM gibi toplama işlevlerine genellikle gerek kalmaz.

Ölçü ve hesaplanan sütundan farkı

Hesap yöntemleri farklı yerlerde yaşar ve farklı amaca hizmet eder. Hangisini seçeceğinizi sormak, görsel hesabı doğru kullanmanın ilk adımıdır.

Ölçü modelde saklanır ve her görselde ilgili filtre bağlamına göre yeniden hesaplanır. Birden çok raporda kullanılacak ya da ilişki gerektiren hesaplar ölçüyle yazılır. Hesaplanan sütun ise veri yüklenirken satır bazında hesaplanır ve modelde yer kaplar. Görsel hesaplama bunların arasında yer alır: hesap isteğe bağlı çalışır, ancak yalnızca görseldeki toplanmış veri üzerinde.

Belge, görsel hesapların toplanmış veri üzerinde çalıştığı için çoğu durumda eşdeğer ölçülerden daha iyi performans verebileceğini belirtir. Buna karşılık ilişki gerektiren işlevler, örneğin RELATED ve USERELATIONSHIP, görsel hesaplarda kullanılamaz.

Karar kuralı basittir: aynı hesap başka görsellerde de gerekecekse ölçü yazın. Hesap yalnızca bu görselin yapısına bağlıysa, örneğin "görseldeki önceki satırla fark", görsel hesap tercih edin.

Şekil 1

Hesap yöntemleri farklı yerde ve farklı amaçla çalışır

Ölçü, hesaplanan sütun ve görsel hesaplama

ÖlçüHesaplanan sütunGörsel hesaplama
Nerede saklanırModeldeModelde, tablodaYalnızca o görselde
Ne zaman hesaplanırİstek anında, bağlama göreVeri yüklenirken, satır bazındaİstek anında, görsel matris üzerinde
Çalıştığı veriModel verisiDetay satırlarıGörseldeki toplanmış satırlar
Başka görselde kullanımEvetEvetHayır, görsele özgüdür
Uygun örnekToplam satış, oranKategori etiketiSatırlar arası fark, kümülatif
Kaynak: Microsoft Learn: Visual calculations overviewMindset Institute

Sık kullanılan işlevler

Görsel hesaplamalar, DAX'teki pencere işlevlerine kısayol sağlayan özel işlevler sunar.

  • RUNNINGSUM: eksen boyunca kümülatif toplam. Kümülatif toplam = RUNNINGSUM([Sales Amount])
  • MOVINGAVERAGE: eksen boyunca hareketli ortalama; pencere genişliği sonraki parametre olarak verilir.
  • PREVIOUS ve NEXT: önceki ya da sonraki satırın değerine başvurur. Önceki dönemle fark = [Profit] - PREVIOUS([Profit])
  • FIRST ve LAST: eksenin ilk ya da son satırına başvurur; ilk dönemle karşılaştırma için kullanılır.
  • COLLAPSE ve COLLAPSEALL: hesabı eksende bir üst düzeyde ya da toplam düzeyinde değerlendirir. Genel toplam payı = DIVIDE([Sales Amount], COLLAPSEALL([Sales Amount], ROWS))
  • EXPAND ve EXPANDALL: hesabı bir alt düzeyde ya da en alt düzeyde değerlendirir.

Bu işlevler için hazır şablonlar da vardır: kümülatif toplam, hareketli ortalama, üst düzeye oran, genel toplama oran, alt düzey ortalaması, önceki ve sonraki ile fark. Şablonlar, işlev adını hatırlamadan başlamak için uygundur ve ürettikleri formülü okuyarak öğrenmenin iyi bir yoludur.

Aynı hesaplar klasik DAX yazımıyla ölçü olarak da yazılabilir; görsel hesap aynı sonucu çok daha kısa bir ifadeyle verir.

Eksen ve sıfırlama: hesap görselin yapısını izler

Görsel hesaplamaların ayırt edici yanı, alan adı yerine görselin yapısına başvurabilmesidir.

Eksen parametresi, hesabın görsel matriste hangi yönde ilerleyeceğini belirler. Varsayılan eksen çoğu görselde satırlardır; yani hesap yukarıdan aşağıya satır satır işlenir. Sütunlar, önce satırlar sonra sütunlar gibi kombinasyonlar da seçilebilir. Görselde olmayan bir eksen belirtilirse yok sayılır.

Sıfırlama parametresi, hesabın hangi düzeyde yeniden başlayacağını söyler. Bir tarih hiyerarşisi (yıl, çeyrek, ay, gün) düşünün. Kümülatif toplamı her yıl başında sıfırlamak için en üst düzeye göre sıfırlama kullanılır.

Yıl başında sıfırlanan kümülatif toplam = RUNNINGSUM([Sales Amount], HIGHESTPARENT)

Hemen üstteki düzeye göre sıfırlamak için LOWESTPARENT eşanlamlısı kullanılır. Sıfırlama belirtilmezse hesap hiç sıfırlanmaz ve her günün değeri öncekilere eklenir.

Eksen ve sıfırlama, görselin alanları değiştiğinde hesabın da uyum sağlamasını sağlar. Alan adlarını sabitlemek isterseniz, sıralama ve bölümleme parametreleri alanlara doğrudan başvurur; ancak bunlar görselin düzeninden bağımsız olarak çalışır.

Örnek senaryo ve sınırlar

Bir mağaza zincirinin yıl, çeyrek ve ay düzeyinde satış matrisi olduğunu düşünelim. Analist şunları istiyor: kümülatif satış, bir önceki aya göre fark ve her ayın yıllık toplam içindeki payı.

Önce satış tutarı alanı görsele eklenir. Sonra kümülatif için RUNNINGSUM yazılır; yıl başında sıfırlansın diye en üst düzey belirtilir. Fark için PREVIOUS ile mevcut değerden önceki değer çıkarılır. Pay için COLLAPSEALL ile toplam düzeyindeki değer paydaya konur. Her hesabın sonucu görsel matriste anında görünür; bu, formülü doğrulamayı kolaylaştırır.

Yardımcı alanı görselde göstermek istemiyorsanız gizleyebilirsiniz. Gizli alanlar görsel matriste kalır ve hesaplar onlara başvurmaya devam eder, ancak görselde görünmez.

Sınırları bilmek de önemlidir. Belgeye göre dilimleyici, Python ve R görselleri, ayrıştırma ağacı ve özel görseller gibi bazı görsellerde görsel hesaplama desteklenmez. Bir görsel hesabı kopyalayıp başka bir görselde kullanamaz, panoya sabitleyemez ve yayınlamayı web'e açık biçimde yapamazsınız; dışa aktarılan veride de görsel hesabın sonucu bulunmaz. Bu kısıtlar ürünle birlikte değişebildiğinden, kullanmadan önce güncel belgeye bakın.

Bu beceriyi Mindset programlarında nerede çalışırsınız

Uygulamalı Power BI ile Veri Analitiği ve Görselleştirme Sertifika Programı'nın DAX analiz dili ve kullanımı modülü, görsel hesaplama işlevlerinin dayandığı DAX mantığını çalıştığınız yerdir. Ölçü yazmayı bilen biri için görsel hesap, aynı mantığın görsele yaklaştırılmış hali olarak daha rahat öğrenilir.

Programın veri güdümlü iş zekası geliştirme başlığı ise hesapların rapora nasıl yerleştirileceğini düşünmek isteyen analistler için bağlam sunar. Daha derinleşmek isteyenler için ayrı bir ileri düzey Power BI ve DAX eğitimi de bulunmaktadır.

İlgili Mindset programı

Uygulamalı Power BI ile Veri Analitiği ve Görselleştirme Sertifika Programı

Sık sorulanlar

Sık sorulan sorular

Görsel hesaplama ile ölçü arasında hangisini seçmeliyim?

Hesap birçok görselde ya da raporda kullanılacaksa ya da model ilişkilerine ihtiyaç duyuyorsa ölçü yazın. Hesap yalnızca bir görselin yapısına bağlıysa, örneğin satırlar arası fark ya da kümülatif toplam, görsel hesaplama daha kısa ve çoğu zaman daha hızlıdır.

Görsel hesaplamayı başka bir görsele kopyalayabilir miyim?

Belgeye göre görsel hesaplamalar kopyalanıp başka görsellerde yeniden kullanılamaz; her görsel için ayrıca yazılır. Aynı hesabı birden çok görselde istiyorsanız bu, ölçüye geçmek için bir nedendir.

Görsel hesaplama neden dilimleyicide çalışmıyor?

Dilimleyici, Python görseli, R görseli ve özel görseller gibi bazı görseller görsel hesaplamayı desteklemez. Hesabı destekleyen bir görsel, örneğin tablo ya da matris kullanıp sonucu oradan gösterebilirsiniz.

Sıfırlama parametresini ne zaman kullanırım?

Hesabın belirli bir düzeyde yeniden başlamasını istediğinizde. Örneğin kümülatif toplamın her yıl başında sıfırdan başlaması gerekiyorsa en üst düzeye göre sıfırlama kullanılır. Eksende tek düzey varsa sıfırlama değil, bölümleme parametresi uygundur.

Görsel hesaplamalar rapor okuyucularına da görünür mü?

Hesap görselin parçası olduğu için rapor yayımlandığında görselle birlikte gelir ve okurlar sonucu görür. Ancak belge, kişiselleştirme gibi bazı okur özelliklerinin görsel hesaplamalarda desteklenmediğini belirtir; rapor tasarlarken bu kısıtları dikkate alın.

Power BI Görsel Hesaplamalar (Visual Calculations)