Aracılığıyla paylaş


Python'da histogramları çizme

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen ÖrneğiMicrosoft Fabric'te SQL veritabanı

Bu makalede , pandas'.hist() Python paketini kullanarak verilerin nasıl çizıldığı açıklanır. SQL Server veritabanı, ardışık, çakışmayan değerler içeren histogram veri aralıklarını görselleştirmek için kullanılan kaynaktır.

Prerequisites

Geri yüklenen veritabanını doğrulama

Tabloyu sorgulayarak geri yüklenen veritabanının Person.CountryRegion mevcut olduğunu doğrulayabilirsiniz:

USE AdventureWorksDW;
SELECT * FROM Person.CountryRegion;

Python paketlerini yükleme

Azure Data Studio'yu indirin ve yükleyin.

Aşağıdaki Python paketlerini yükleyin:

  • pyodbc
  • pandas
  • sqlalchemy
  • matplotlib

Bu paketleri yüklemek için:

  1. Azure Data Studio not defterinizde Paketleri Yönet'i seçin.
  2. Paketleri Yönet bölmesinde Yeni ekle sekmesini seçin.
  3. Aşağıdaki paketlerin her biri için paket adını girin, Ara'yı ve ardından Yükle'yi seçin.

Çizim histogramı

Histogramda görüntülenen dağıtılmış veriler, tarafından yapılan AdventureWorksDW2025bir SQL sorgusunu temel alır. Histogram, verileri ve veri değerlerinin sıklığını görselleştirir.

SQL Server veritabanına bağlanmak için , , serverve database bağlantı dizesi değişkenlerini usernamepassworddüzenleyin.

Yeni not defteri oluşturmak için:

  1. Azure Data Studio'da Dosya'yı ve Yeni Not Defteri'ni seçin.

  2. Not defterinde python3 çekirdeğini seçin ve +code öğesini seçin.

  3. Not defterine kod yapıştırın. Tümünü Çalıştır'ı seçin.

    import pyodbc 
    import pandas as pd
    import matplotlib
    import sqlalchemy
    
    from sqlalchemy import create_engine
    
    matplotlib.use('TkAgg', force=True)
    from matplotlib import pyplot as plt
    
    # Some other example server values are
    # server = 'localhost\sqlexpress' # for a named instance
    # server = 'myserver,port' # to specify an alternate port
    server = 'servername'
    database = 'AdventureWorksDW2022'
    username = 'yourusername'
    password = 'databasename'
    
    url = 'mssql+pyodbc://{user}:{passwd}@{host}:{port}/{db}?driver=SQL+Server'.format(user=username, passwd=password, host=server, port=port, db=database)
    engine = create_engine(url)
    
    sql = "SELECT DATEDIFF(year, c.BirthDate, GETDATE()) AS Age FROM [dbo].[FactInternetSales] s INNER JOIN dbo.DimCustomer c ON s.CustomerKey = c.CustomerKey"
    
    df = pd.read_sql(sql, engine)
    df.hist(bins=50)
    
    plt.show()
    

Ekranda, tablodaki müşterilerin FactInternetSales yaş dağılımı gösterilir.

Pandas histogram dağılımını gösteren diyagram.