Plotly-온라인 및 오프라인 플로팅
다음 장에서는 온라인 및 오프라인 플로팅에 대한 설정을 다룹니다. 먼저 온라인 플로팅 설정을 살펴 보겠습니다.
온라인 플로팅 설정
Data 과 graph 온라인 플롯의 plot.ly account. 온라인 플롯은 두 가지 방법으로 생성됩니다.url 플롯을 위해 Plotly 계정에 저장하십시오.
py.plot() − 고유 한 URL을 반환하고 선택적으로 URL을 엽니 다.
py.iplot() −에서 일할 때 Jupyter Notebook 노트북에 플롯을 표시합니다.
이제 각도의 간단한 플롯을 표시합니다. radians vs. its sine value. 먼저, 다음을 사용하여 0과 2π 사이 각도의 ndarray 객체를 구합니다.arange()numpy 라이브러리의 함수. 이 ndarray 객체는x axis그래프의. x에 표시되어야하는 각도의 해당 사인 값y axis 다음 진술에 의해 얻어진다-
import numpy as np
import math #needed for definition of pi
xpoints = np.arange(0, math.pi*2, 0.05)
ypoints = np.sin(xpoints)
다음으로 다음을 사용하여 분산 추적을 만듭니다. Scatter() 기능 graph_objs module.
trace0 = go.Scatter(
x = xpoints,
y = ypoints
)
data = [trace0]
위의 목록 개체를 인수로 사용 plot() 함수.
py.plot(data, filename = 'Sine wave', auto_open=True)
다음 스크립트를 다른 이름으로 저장 plotly1.py
import plotly
plotly.tools.set_credentials_file(username='lathkar', api_key='********************')
import plotly.plotly as py
import plotly.graph_objs as go
import numpy as np
import math #needed for definition of pi
xpoints = np.arange(0, math.pi*2, 0.05)
ypoints = np.sin(xpoints)
trace0 = go.Scatter(
x = xpoints, y = ypoints
)
data = [trace0]
py.plot(data, filename = 'Sine wave', auto_open=True)
명령 줄에서 위에서 언급 한 스크립트를 실행합니다. 결과 플롯은 아래와 같이 지정된 URL의 브라우저에 표시됩니다.
$ python plotly1.py
High five! You successfully sent some data to your account on plotly.
View your plot in your browser at https://plot.ly/~lathkar/0
표시된 그래프 바로 위에 플롯, 데이터, Python 및 Rand Forking 내역 탭이 있습니다.
현재 Plot tab선택됩니다. 데이터 탭에는 x 및y데이터 점수. Python & R 탭에서 Python, R, JSON, Matlab 등의 현재 플롯에 해당하는 코드를 볼 수 있습니다. 다음 스냅 샷은 위에서 생성 된 플롯에 대한 Python 코드를 보여줍니다.
오프라인 플로팅 설정
Plotly를 사용하면 오프라인에서 그래프를 생성하고 로컬 컴퓨터에 저장할 수 있습니다. 그만큼plotly.offline.plot() 함수는 로컬에 저장되고 웹 브라우저 내에서 열리는 독립형 HTML을 만듭니다.
사용하다 plotly.offline.iplot() 오프라인으로 작업 할 때 Jupyter Notebook 노트북에 플롯을 표시합니다.
Note − Plotly의 버전 1.9.4+ 오프라인 플로팅에 필요합니다.
변화 plot() function스크립트에서 문을 열고 실행하십시오. 이름이 지정된 HTML 파일temp-plot.html 로컬에서 생성되고 웹 브라우저에서 열립니다.
plotly.offline.plot(
{ "data": data,"layout": go.Layout(title = "hello world")}, auto_open = True)