파이썬 코어 프로그래밍 : 평행 파이썬 플로팅 플롯 좌표 (plotly) 모드

모두를 위해 오늘 작은 파이썬 구현이 평행 좌표 그래프 (plotly) 모드, 좋은 참조 값을 그릴 공유하는, 우리가 도와주고 싶어요. 작은 시리즈를 함께 따라, 와서 보라
병렬 줄거리 소개

데이터가이 시간에 데이터의 3 차원 시각화를 초과하면 너무 쉽게 이상이된다. 데이터의 높은 차원 시각화의 문제를 해결하기 위해 병렬 플롯을 사용할 수있다. 데카르트 공간이 부족하기 쉬운 좌표계를 극복하기 위해, 문제는 서로 평행하는 일련의 상기 각각 병렬 그래프 가변 높은 차원 데이터의 3 차원 데이터를 표현하기 어려운 다음 설명은 병렬로 수행된다 바이 백과 플롯 좌표 축 샤프트의 위치에 대응하는 변수의 값을 나타낸다. 광고 포인트는 종종 다른 변수에 대해 설명한다 동향 변수 사이의 관계의 변화를 반영하기 위해 접속된다. 따라서, 그래프의 실질적 포인트 사이에 평행 한 차원 유클리드 공간이 M (xi1, xi2을 ... XIM)는 2 차원 평면 상에 곡선으로 매핑. N 개의 병렬 라인의 맥락에서, 고 차원 공간의 점에서 (일반적으로 수직 등거리 N 선)은, 접힘 선 N 평행 축, k 번째의 변곡점으로서 표현 될 수있다 k 번째 차원의 축 점의 값을 나타낸다.

플롯 좌표 평행 도면

이 문서에서는 병렬, plotly 패키지 (패키지 및 plotly 기본 팬더 패키지가 설치되어있는)를 그리는 팬더 패키지 및 사용을 사용하여 그려 파이썬을 사용하여 플롯을 조정 그리는 두 가지 방법을 설명합니다.

팬더 평행의 플롯을 조정하여 플롯

import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns
from pandas.plotting import parallel_coordinates
  
data = sns.load_dataset('iris')
  
fig,axes = plt.subplots()
parallel_coordinates(data,'species',ax=axes)
fig.savefig('parallel.png')

: 맵핑 그대로 다음 좌표 병렬 그림 삽입 설명 여기
도면에서이 방식으로 만든 공통 X는 축 변수 Y 인해 sepal_length, sepal_width, petal_length 네 변수 petal_width 워스 근접 범위 이번에 좌표축을 알 수있다 그러나, 값 sepal_length, sepal_width, petal_length 이들 변수 사이 petal_width 큰 차이의 범위는 상기 Y 그러한 공통 축에 평행도 좌표가 더 이상 적용 이번에 도면 공통 축에 평행 (Y)은 매우 우수한 시각적 효과가 좌표 필요한 것은 독립적 인 평행 한 Y 축 좌표를 플롯이다. 또 다른 방법은 후술 독립적 그래프의 y 축선에 평행하게 구현된다.

plotly하여 세우고 플롯 좌표 평행

plotly 그리기는 두 가지 모드가 있습니다, 하나는 온라인 모드이고 다른 모드가 오프라인 상태입니다. 본원에 사용 된 바와 같이, 오프라인 모드는 jupyter 노트북에 도시된다.

먼저, 그림의 plotly 방법을 숙지 :

import plotly as py
import plotly.graph_objs as go
py.offline.init_notebook_mode(connected=True) # 初始化设置
  
py.offline.iplot({
 "data": [go.Parcoords(
  line = dict(color = 'blue'),
  dimensions = list([
   dict(range = [1,5],
     constraintrange = [1,2],
     label = 'A', values = [1,4]),
   dict(range = [1.5,5],
     tickvals = [1.5,3,4.5],
     label = 'B', values = [3,1.5]),
   dict(range = [1,5],
     tickvals = [1,2,4,5],
     label = 'C', values = [2,4],
     ticktext = ['text 1', 'text 2', 'text 3', 'text 4']),
   dict(range = [1,5],
     label = 'D', values = [4,2])
  ])
 )],
 "layout": go.Layout(title="My first parallel coordinates")
})

다음과 같은 그래프는 다음과 같습니다 그림 삽입 설명 여기
그리기 병렬 홍채 데이터의 그래프를 좌표 :

df = sns.load_dataset('iris')
df['species_id'] = df['species'].map({'setosa':1,'versicolor':2,'virginica':3}) #用于颜色映射
  
py.offline.iplot({
 "data": [go.Parcoords(
  line = dict(color = df['species_id'],
     colorscale = [[0,'#D7C16B'],[0.5,'#23D8C3'],[1,'#F3F10F']]),
  dimensions = list([
   dict(range = [2,8],
    constraintrange = [4,8],
    label = 'Sepal Length', values = df['sepal_length']),
   dict(range = [1,6],
    label = 'Sepal Width', values = df['sepal_width']),
   dict(range = [0,8],
    label = 'Petal Length', values = df['petal_length']),
   dict(range = [0,4],
    label = 'Petal Width', values = df['petal_width'])
  ])
 )],
 "layout": go.Layout(title='Iris parallel coordinates plot')
})

다음 그림은 그려 :그림 삽입 설명 여기

참고 : plotly.offline.iplot, go.Parcoords 및 go.Layout 사용 키워드 도움말보기 도움말 파일, 다른 pyecharts, 도움말 문서를 사용할 수있는 경우 plotly 매우 상세하게 제공했다.

우리는 쿤 버클 Python을 학습하는 것이 좋습니다 : 913066266, 어떻게 노인이 학습에서 봐! 기본적인 웹 개발 파이썬 스크립트에서, 파충류, 장고, 데이터 마이닝 등을 PDF, 실제 소스 코드]로 마무리되는 전투 데이터 프로젝트를 제로. 모든 작은 파이썬 파트너에게 주어! 매일 다니엘은 배우고 작은 세부 사항에주의 할 필요가 클릭에서 우리와 함께 할 수있는 몇 가지 방법을 공유하고, 타이밍 파이썬 기술을 설명 학습자 수집 파이썬

게시 47 개 원래 기사 · 원 찬양 53 ·은 50000 +를 볼

추천

출처blog.csdn.net/haoxun03/article/details/104270650