Udostępnij przez


Wykresy treemap i sunburst w raportach stronicowanych w usługach SQL Server Reporting Services (Report Builder)

Dotyczy: Microsoft Report Builder (SSRS) Power BI Report Builder Projektant raportów w narzędziu SQL Server Data Tools

Mapa drzewa i wizualizacje typu sunburst programu SQL Server Report Builder doskonale nadają się do wizualnego reprezentowania danych hierarchicznych w paginowanym raporcie. Ten artykuł zawiera omówienie sposobu dodawania mapy drzewa lub wykresu sunburst do raportu. Artykuł zawiera również przykładowe zapytanie AdventureWorks ułatwiające rozpoczęcie pracy.

Wykres mapy drzewa

Wykres mapy drzewa dzieli obszar wykresu na prostokąty reprezentujące różne poziomy i względne rozmiary hierarchii danych. Mapa jest podobna do gałęzi na drzewie, które zaczynają się od pnia i dzielą się na mniejsze i mniejsze gałęzie. Każdy prostokąt jest podzielony na mniejsze prostokąty reprezentujące następny poziom w hierarchii. Prostokąty na mapie drzewa na najwyższym poziomie są rozmieszczone tak, że największy prostokąt znajduje się w lewym górnym rogu wykresu, a najmniejszy w prawym dolnym rogu. W obrębie prostokąta następny poziom wyższego jest również rozmieszczony z prostokątami z lewej górnej do prawej dolnej części.

Na przykład na poniższej ilustracji mapy drzewa próbki terytorium Południowo-Zachodniej jest największe, a Niemcy są najmniejsze. Na Południowym Zachodzie rowery szosowe są większe niż rowery górskie.

ssrs_treemap_example

Aby wstawić wykres mapy drzewa i skonfigurować przykładowe dane AdventureWorks

Uwaga / Notatka

Przed dodaniem wykresu do raportu utwórz źródło danych i zestaw danych. Aby uzyskać przykładowe dane i przykładowe zapytanie, zobacz Przykładowe dane AdventureWorks.

  1. Kliknij prawym przyciskiem myszy powierzchnię projektową, a następnie wybierz polecenie Wstaw>wykres. Wybierz ikonę Mapa drzewa .

    ssrs_treemap_icon ssrs_treemap_icon

  2. Zmień położenie i zmień rozmiar wykresu. Aby użyć z przykładowymi danymi, dobrym początkiem jest wykres o szerokości 5 cali.

  3. Dodaj następujące pola z przykładowych danych:

    • Wartości: LineTotal
    • Grupy kategorii (w następującej kolejności):
      1. Nazwa kategorii
      2. PodkategoriaName
    • Grupy serii: TerritoryName

    ssrs_treemap_example_properties ssrs_treemap_example_properties

  4. Aby zoptymalizować rozmiar strony dla ogólnego kształtu mapy drzewa, ustaw położenie legendy na dół.

  5. Aby dodać etykietki narzędzi, które wyświetlają podkategorię i sumę wiersza, kliknij prawym przyciskiem myszy pozycję LineTotal, a następnie wybierz pozycję Właściwości serii.

    właściwości_serii_vizualizacji_ssrs właściwości_serii_vizualizacji_ssrs

    Ustaw właściwość Etykieta narzędzia na następującą wartość:

    =Fields!SubcategoryName.Value &": " &Format(Sum(Fields!LineTotal.Value),"C")  
    

    Aby uzyskać więcej informacji, zobacz Show ToolTips on a series (Report Builder and SSRS) (Pokaż etykietki narzędzi w serii (Report Builder i SSRS).

  6. Zmień domyślny tytuł wykresu na Kategoryzowana sprzedaż według terytorium.

  7. Liczba wyświetlanych wartości etykiet ma wpływ na rozmiar czcionki, rozmiar ogólnego obszaru wykresu i rozmiar określonych prostokątów. Aby wyświetlić więcej etykiet, zmień właściwość Czcionka etykiety elementu LineTotal na 10 pkt z wartości domyślnej 8 pkt.

Wykres sunburst

Na wykresie sunburst hierarchia jest reprezentowana przez serię okręgów. Najwyższy poziom hierarchii znajduje się w środku, a niższe poziomy hierarchii to pierścienie wyświetlane poza centrum. Najniższym poziomem hierarchii jest pierścień zewnętrzny.

ssrs_sunburst_example

Aby wstawić wykres sunburst i skonfigurować dane przykładowe z AdventureWorks

Uwaga / Notatka

Przed dodaniem wykresu do raportu utwórz źródło danych i zestaw danych. Aby uzyskać przykładowe dane i przykładowe zapytanie, zobacz Przykładowe dane AdventureWorks.

  1. Kliknij prawym przyciskiem myszy obszar projektu, a następnie wybierz pozycję Wstaw>Wykres. Wybierz ikonę Sunburst .

    ssrs_sunburst_icon

  2. Zmień położenie i zmień rozmiar wykresu. Aby użyć z przykładowymi danymi, dobrym początkiem jest wykres o szerokości 5 cali.

  3. Dodaj następujące pola z przykładowych danych:

    • Wartości: LineTotal
    • Grupy kategorii (w następującej kolejności):
      1. Nazwa kategorii
      2. PodkategoriaName
      3. NazwaPrzyczynySprzedaży
    • Grupy serii: TerritoryName

    ssrs_treemap_example_properties ssrs_treemap_example_properties

  4. Aby zoptymalizować rozmiar strony dla ogólnego kształtu wykresu słonecznego, ustaw położenie legendy na dół.

  5. Zmień domyślny tytuł wykresu na Kategoryzowana sprzedaż według terytorium z przyczyną sprzedaży.

  6. Aby dodać wartości grup kategorii do sunburst jako etykiet, ustaw właściwości etykiety Visible=true i UseValueAsLabel=false.

    Wyświetlane wartości etykiet mają wpływ na rozmiar czcionki, rozmiar ogólnego obszaru wykresu i rozmiar określonych prostokątów. Aby wyświetlić więcej etykiet, zmień właściwość Czcionka etykiety elementu LineTotal na 10 pkt z wartości domyślnej 8 pkt.

    ssrs_sunburst_linetotalproperties ssrs_sunburst_linetotalproperties

  7. Jeśli chcesz użyć innego zakresu kolorów, zmień właściwość palety wykresów.

    ssrs_visualization_palette

Przykładowe dane AdventureWorks

Ta sekcja zawiera przykładowe zapytanie i podstawowe kroki tworzenia źródła danych i zestawu danych w programie Report Builder. Jeśli raport zawiera już źródło danych i zestaw danych, możesz pominąć tę sekcję.

Zapytanie zwraca dane szczegółów zamówienia sprzedaży AdventureWorks z obszarem sprzedaży, kategorią produktu, podkategorią produktów i danymi przyczyn sprzedaży.

  1. Pobierz dane.

    Przykłady kodu w tym artykule korzystają z przykładowej bazy danych AdventureWorks2025 lub AdventureWorksDW2025, którą można pobrać ze strony głównej Przykładów programu Microsoft SQL Server i projektów społeczności.

  2. Utwórz źródło danych.

    1. W obszarze Dane raportu kliknij prawym przyciskiem myszy pozycję Źródła danych, a następnie wybierz pozycję Dodaj źródło danych.

    2. Wybierz Użyj połączenia osadzonego w raporcie.

    3. W polu Typ połączenia wybierz pozycję Microsoft SQL Server.

    4. Wprowadź parametry połączenia z serwerem i bazą danych. Przykład:

      Data Source=[server name];Initial Catalog=AdventureWorks2022  
      
    5. Aby zweryfikować połączenie, wybierz przycisk Testuj połączenie , a następnie wybierz przycisk OK.

    Aby uzyskać więcej informacji na temat tworzenia źródła danych, zobacz Dodawanie i weryfikowanie połączenia danych (Report Builder i SSRS).

  3. Tworzenie zestawu danych.

    1. W obszarze Dane raportu kliknij prawym przyciskiem myszy pozycję Zestawy danych, a następnie wybierz pozycję Dodaj zestaw danych.

    2. Wybierz Użyj zestawu danych w raporcie.

    3. Wybierz utworzone źródło danych.

    4. Wybierz typ zapytania Tekstowe , a następnie skopiuj i wklej następujące zapytanie w polu tekstowym Zapytanie :

      SELECT    Sales.SalesOrderHeader.SalesOrderID, Sales.SalesOrderHeader.OrderDate, Sales.SalesOrderDetail.SalesOrderDetailID, Sales.SalesOrderDetail.ProductID, Sales.SalesOrderDetail.LineTotal,   
                               Sales.SalesOrderDetail.UnitPrice, Sales.SalesOrderDetail.OrderQty, Production.Product.Name, Production.Product.ProductNumber, Sales.SalesTerritory.TerritoryID, lower(Sales.SalesTerritory.Name) AS TerritoryName,   
                               Production.ProductSubcategory.Name AS SubcategoryName, Production.ProductCategory.Name AS CategoryName, Sales.SalesReason.SalesReasonID, Sales.SalesReason.Name AS SalesReasonName  
      FROM            Sales.SalesOrderDetail INNER JOIN  
                               Sales.SalesOrderHeader ON Sales.SalesOrderDetail.SalesOrderID = Sales.SalesOrderHeader.SalesOrderID INNER JOIN  
                               Production.Product ON Sales.SalesOrderDetail.ProductID = Production.Product.ProductID INNER JOIN  
                               Sales.SalesTerritory ON Sales.SalesOrderHeader.TerritoryID = Sales.SalesTerritory.TerritoryID AND Sales.SalesOrderHeader.TerritoryID = Sales.SalesTerritory.TerritoryID AND   
                               Sales.SalesOrderHeader.TerritoryID = Sales.SalesTerritory.TerritoryID INNER JOIN  
                               Production.ProductSubcategory ON Production.Product.ProductSubcategoryID = Production.ProductSubcategory.ProductSubcategoryID AND   
                               Production.Product.ProductSubcategoryID = Production.ProductSubcategory.ProductSubcategoryID AND   
                               Production.Product.ProductSubcategoryID = Production.ProductSubcategory.ProductSubcategoryID INNER JOIN  
                               Production.ProductCategory ON Production.ProductSubcategory.ProductCategoryID = Production.ProductCategory.ProductCategoryID AND   
                               Production.ProductSubcategory.ProductCategoryID = Production.ProductCategory.ProductCategoryID AND   
                               Production.ProductSubcategory.ProductCategoryID = Production.ProductCategory.ProductCategoryID INNER JOIN  
                               Sales.SalesOrderHeaderSalesReason ON Sales.SalesOrderHeader.SalesOrderID = Sales.SalesOrderHeaderSalesReason.SalesOrderID AND   
                               Sales.SalesOrderHeader.SalesOrderID = Sales.SalesOrderHeaderSalesReason.SalesOrderID AND Sales.SalesOrderHeader.SalesOrderID = Sales.SalesOrderHeaderSalesReason.SalesOrderID AND   
                               Sales.SalesOrderHeader.SalesOrderID = Sales.SalesOrderHeaderSalesReason.SalesOrderID INNER JOIN  
                               Sales.SalesReason ON Sales.SalesOrderHeaderSalesReason.SalesReasonID = Sales.SalesReason.SalesReasonID AND   
                               Sales.SalesOrderHeaderSalesReason.SalesReasonID = Sales.SalesReason.SalesReasonID AND Sales.SalesOrderHeaderSalesReason.SalesReasonID = Sales.SalesReason.SalesReasonID AND   
                               Sales.SalesOrderHeaderSalesReason.SalesReasonID = Sales.SalesReason.SalesReasonID  
      
    5. Kliknij przycisk OK.

    Aby uzyskać więcej informacji na temat tworzenia zestawu danych, zobacz Tworzenie udostępnionego zestawu danych lub osadzonego zestawu danych (Report Builder i SSRS).