데이터 시각화

완료됨

데이터 쿼리의 결과를 분석하는 가장 직관적인 방법은 차트로 시각화하는 것입니다. Azure Databricks의 Notebook은 사용자 인터페이스에서 몇 가지 차트 기능을 제공하며, 해당 기능이 필요한 기능을 제공하지 않는 경우 많은 Python 그래픽 라이브러리 중 하나를 사용하여 Notebook에서 데이터 시각화를 만들고 표시할 수 있습니다.

기본 제공 Notebook 차트 사용

데이터 프레임을 표시하거나 Azure Databricks의 Spark Notebook에서 SQL 쿼리를 실행하면 결과가 코드 셀 아래에 표시됩니다. 기본적으로 결과는 테이블로 렌더링되지만 다음과 같이 결과를 시각화로 보고, 차트에서 데이터를 표시하는 방법을 사용자 지정할 수도 있습니다.

A screenshot of a notebook displaying a visualization of product counts by category.

Notebook의 기본 제공 시각화 기능은 데이터를 시각적으로 빠르게 요약하려는 경우에 유용합니다. 데이터의 서식을 보다 세세하게 제어하거나 쿼리에서 이미 집계한 값을 표시하려면 그래픽 패키지를 사용하여 고유한 시각화를 만드는 것이 좋습니다.

코드에서 그래픽 패키지 사용

코드에서 데이터 시각화를 만드는 데 사용할 수 있는 그래픽 패키지가 많이 있습니다. 특히 Python은 다양한 패키지를 지원합니다. 대부분의 기본 Matplotlib 라이브러리를 기반으로 합니다. 그래픽 라이브러리의 출력은 Notebook에서 렌더링할 수 있으므로 코드를 결합하여 인라인 데이터 시각화 및 Markdown 셀을 사용하여 데이터를 수집하고 조작하여 설명을 제공할 수 있습니다.

예를 들어 다음 PySpark 코드를 사용하여 이 모듈에서 이전에 탐색한 가상 제품 데이터의 데이터를 집계하고 Matplotlib를 사용하여 집계된 데이터에서 차트를 만들 수 있습니다.

from matplotlib import pyplot as plt

# Get the data as a Pandas dataframe
data = spark.sql("SELECT Category, COUNT(ProductID) AS ProductCount \
                  FROM products \
                  GROUP BY Category \
                  ORDER BY Category").toPandas()

# Clear the plot area
plt.clf()

# Create a Figure
fig = plt.figure(figsize=(12,8))

# Create a bar plot of product counts by category
plt.bar(x=data['Category'], height=data['ProductCount'], color='orange')

# Customize the chart
plt.title('Product Counts by Category')
plt.xlabel('Category')
plt.ylabel('Products')
plt.grid(color='#95a5a6', linestyle='--', linewidth=2, axis='y', alpha=0.7)
plt.xticks(rotation=70)

# Show the plot area
plt.show()

Matplotlib 라이브러리를 사용하려면 데이터가 Spark 데이터 프레임이 아닌 Pandas 데이터 프레임에 있어야 하므로 toPandas 메서드를 사용하여 변환합니다. 그런 다음, 코드는 지정된 크기의 그림을 만들고 결과 플롯을 표시하기 전에 일부 사용자 지정 속성 구성이 있는 가로 막대형 차트를 표시합니다.

코드에서 생성된 차트는 다음 이미지와 유사합니다.

A bar chart showing product counts by category.

Matplotlib 라이브러리를 사용하여 다양한 종류의 차트를 만들 수 있습니다. 또는 선호하는 경우 Seaborn과 같은 다른 라이브러리를 사용하여 고도로 사용자 지정된 차트를 만들 수 있습니다.

참고

Matplotlib 및 Seaborn 라이브러리는 클러스터의 Databricks Runtime에 따라 Databricks 클러스터에 이미 설치되어 있을 수 있습니다. 설치되지 않았거나 아직 설치되지 않은 다른 라이브러리를 사용하려는 경우 클러스터에 추가할 수 있습니다. 자세한 내용은 Azure Databricks 설명서에서 클러스터 라이브러리를 참조하세요.