Python의 데이터 시각화: 기본 플롯 설명 [그래픽 일러스트레이션 포함]
게시 됨: 2021-02-08목차
기본 설계 원칙
야심 차거나 성공적인 데이터 과학자에게 연구 및 분석을 설명할 수 있는 것은 매우 중요하고 유용한 기술입니다. 여기서 데이터 시각화가 등장합니다. 청중이 잘못된 디자인 선택으로 인해 쉽게 잘못 정보를 얻거나 속일 수 있으므로 이 도구를 정직하게 사용하는 것이 중요합니다.
데이터 과학자로서 우리 모두는 진실을 보존하는 문제에 있어 특정한 의무가 있습니다.
첫 번째는 데이터를 정리하고 요약하는 동안 우리 자신에게 완전히 정직해야 한다는 것입니다. 데이터 사전 처리는 모든 기계 학습 알고리즘이 작동하는 데 매우 중요한 단계이므로 데이터의 부정직성은 크게 다른 결과로 이어집니다.
또 다른 의무는 대상 고객에 대한 것입니다. 데이터 시각화에는 데이터의 특정 섹션을 강조 표시하고 다른 데이터 조각을 덜 두드러지게 만드는 데 사용되는 다양한 기술이 있습니다. 따라서 우리가 충분히 주의하지 않으면 독자가 분석을 제대로 탐색하고 판단할 수 없게 되어 의심과 신뢰 부족으로 이어질 수 있습니다.
항상 자신에게 질문하는 것은 데이터 과학자에게 좋은 특성입니다. 그리고 우리는 맥락이 중요하다는 것을 기억하면서, 미학적으로 뿐만 아니라 이해하기 쉬운 방식으로 진정으로 중요한 것을 보여줄 방법에 대해 항상 생각해야 합니다.
이것이 바로 알베르토 카이로가 그의 가르침에서 묘사하려고 하는 것입니다. 그는 훌륭한 시각화의 다섯 가지 특성인 아름답고 계몽적이며 기능적이며 통찰력 있고 진실 하며 기억할 가치가 있다고 언급합니다.
몇 가지 기본 플롯
이제 디자인 원칙에 대한 기본적인 이해를 하였으므로 파이썬에서 matplotlib 라이브러리를 사용하여 몇 가지 기본적인 시각화 기술에 대해 알아보겠습니다.
아래의 모든 코드는 Jupyter 노트북에서 실행할 수 있습니다.
%matplotlib 노트북
# 이것은 대화형 환경을 제공하고 백엔드를 설정합니다. ( %matplotlib 인라인 도 사용할 수 있지만 대화형이 아닙니다. 이는 플로팅 기능에 대한 추가 호출이 원래 시각화를 자동으로 업데이트하지 않는다는 것을 의미합니다.)
import matplotlib.pyplot as plt # 필요한 라이브러리 모듈 가져오기
포인트 플롯
점을 그리는 가장 간단한 matplotlib 함수는 plot() 입니다. 인수는 X 및 Y 좌표를 나타내고 데이터 출력이 표시되는 방식을 설명하는 문자열 값을 나타냅니다.
plt.Figure()
plt.plot( 5, 6, '+' ) # + 기호는 마커 역할을 합니다.
산점도
산점도는 2차원 플롯입니다. scatter() 함수 는 X 값을 첫 번째 인수로 사용하고 Y 값을 두 번째 인수로 사용합니다. 아래 플롯은 대각선이며 matplotlib 는 두 축의 크기를 자동으로 조정합니다. 여기에서 산점도는 항목을 시리즈로 취급하지 않습니다. 따라서 각 점에 해당하는 원하는 색상 목록을 제공할 수도 있습니다.
numpy를 np로 가져오기
x = np.array( [1, 2, 3, 4, 5, 6, 7, 8] )
y = x
plt.Figure()
plt.scatter( x, y )
라인 플롯
선 플롯은 plot() 함수로 생성되고 산점도와 같은 다양한 일련의 데이터 포인트를 표시하지만 각 포인트 시리즈를 선으로 연결합니다.
numpy를 np로 가져오기
linear_data = np.array( [1, 2, 3, 4, 5, 6, 7, 8] )
squared_data = linear_data**2
plt.Figure()
plt.plot( linear_data, '-o', squared_data, '-o')
그래프를 더 읽기 쉽게 만들기 위해 각 선이 나타내는 내용을 알려주는 범례를 추가할 수도 있습니다. 그래프와 두 축에 대한 적절한 제목이 중요합니다. 또한 그래프의 모든 섹션은 관련 영역을 강조 표시하기 위해 fill_between() 함수를 사용하여 음영 처리될 수 있습니다.
plt.xlabel('X 값')
plt.ylabel('Y 값')

plt.title('선 플롯')
plt.legend( ['선형', '제곱'] )
plt.gca().fill_between( 범위 ( len ( linear_data ) ), linear_data, squared_data, 면색 = '파란색', 알파 = 0.25)
수정된 그래프는 이렇습니다-
막대 차트
bar() 함수 에 X 값과 각 막대의 높이에 대한 인수를 전송하여 막대 차트를 그릴 수 있습니다 . 아래는 위에서 사용한 것과 동일한 선형 데이터 배열의 막대 플롯입니다.
plt.Figure()
x = 범위( len ( linear_data ))
plt.bar( x, linear_data )
# 제곱 데이터를 동일한 그래프에 다른 막대 세트로 표시하려면 첫 번째 막대 세트를 보충하기 위해 새로운 x 값을 조정해야 합니다.
new_x = []
x의 데이터:
new_x.append(데이터+0.3)
plt.bar(new_x, squared_data, 너비 = 0.3, 색상 = '녹색')
# 수평 방향 그래프의 경우 barh() 함수 를 사용합니다.
plt.Figure()
x = 범위( len( linear_data ))
plt.barh( x, linear_data, 높이 = 0.3, 색상 = 'b')
plt.barh( x, squared_data, 높이 = 0.3, 왼쪽 = linear_data, 색상 = 'g')
# 다음은 세로로 막대 플롯을 쌓는 예입니다.
plt.Figure()
x = 범위( len( linear_data ))
plt.bar( x, linear_data, 너비 = 0.3, 색상 = 'b')
plt.bar( x, squared_data, 너비 = 0.3, 하단 = linear_data, 색상 = 'g')
세계 최고의 대학에서 데이터 과학 과정 을 배우십시오 . 이그 제 큐 티브 PG 프로그램, 고급 인증 프로그램 또는 석사 프로그램을 획득하여 경력을 빠르게 추적하십시오.
결론
시각화 유형은 여기서 끝나지 않습니다. Python에는 또한 탐색할 가치가 있는 seaborn 이라는 훌륭한 라이브러리가 있습니다. 적절한 정보 시각화는 데이터 가치를 높이는 데 크게 도움이 됩니다. 데이터 시각화는 수백만 개의 레코드가 있는 지루한 테이블을 살펴보는 것보다 통찰력을 얻고 다양한 추세와 패턴을 식별하는 데 항상 더 나은 옵션이 될 것입니다.
데이터 과학에 대해 자세히 알아보려면 IIIT-B & upGrad의 데이터 과학 PG 디플로마를 확인하십시오. 이 디플로마는 실무 전문가를 위해 만들어졌으며 10개 이상의 사례 연구 및 프로젝트, 실용적인 실습 워크샵, 업계 전문가와의 멘토링, 1- 업계 멘토와 일대일, 400시간 이상의 학습 및 최고의 기업과의 취업 지원.
데이터 시각화에 유용한 Python 패키지는 무엇입니까?
Python에는 데이터 시각화를 위한 놀랍고 유용한 패키지가 있습니다. 이러한 패키지 중 일부는 다음과 같습니다.
1. Matplotlib - Matplotlib는 산점도, 막대 그래프, 파이 차트 및 선 차트와 같은 다양한 형식의 데이터 시각화에 사용되는 인기 있는 Python 라이브러리입니다. 수학 연산에 Numpy를 사용합니다.
2. Seaborn - Seaborn 라이브러리는 Python에서 통계적 표현에 사용됩니다. Matplotlib의 상단에서 개발되었으며 Pandas 데이터 구조와 통합됩니다.
3. Altair - Altair는 데이터 시각화를 위한 또 다른 인기 있는 Python 라이브러리입니다. 최소한의 코딩으로 시각적 개체를 만들 수 있는 선언적 통계 라이브러리입니다.
4. Plotly - Plotly는 Python의 대화형 오픈 소스 데이터 시각화 라이브러리입니다. 이 브라우저 기반 라이브러리에서 생성된 비주얼은 Jupyter Notebook 및 독립 실행형 HTML 파일과 같은 많은 플랫폼에서 지원됩니다.
포인트 플롯과 산점도에 대해 무엇을 알고 있습니까?
포인트 플롯은 데이터 시각화를 위한 가장 기본적이고 간단한 플롯입니다. 포인트 플롯은 데카르트 평면에 포인트 형태로 데이터를 표시합니다. "+"는 값의 증가를 나타내고 "-"는 시간 경과에 따른 값의 감소를 나타냅니다.
반면에 산포도는 데이터가 2차원 평면에서 시각화되는 최적화된 플롯입니다. x축 값을 첫 번째 매개변수로, y축 값을 두 번째 매개변수로 취하는 scatter() 함수를 사용하여 정의합니다.
데이터 시각화의 장점은 무엇입니까?
다음 이점은 데이터 시각화가 조직 성장의 진정한 영웅이 될 수 있는 방법을 보여줍니다.
1. 데이터 시각화를 통해 원시 데이터를 더 쉽게 해석하고 추가 분석을 위해 이해할 수 있습니다.
2. 데이터를 조사하고 분석한 후 의미 있는 시각화를 사용하여 결과를 표시할 수 있습니다. 이를 통해 청중과 더 쉽게 연결하고 결과를 설명할 수 있습니다.
3. 이 기술의 가장 필수적인 응용 프로그램 중 하나는 패턴과 추세를 분석하여 예측 및 잠재적 성장 영역을 추론하는 것입니다.
4. 또한 고객의 선호도에 따라 데이터를 분리할 수 있습니다. 더 많은 주의가 필요한 영역을 식별할 수도 있습니다.