>  기사  >  백엔드 개발  >  Bokeh는 데이터 시각화를 위한 Python의 흥미로운 데이터 도구입니다.

Bokeh는 데이터 시각화를 위한 Python의 흥미로운 데이터 도구입니다.

王林
王林원래의
2024-09-08 16:30:04745검색

데이터 시각화는 대량의 정보를 해석하는 데 중요한 역할을 합니다. Bokeh와 같은 도구는 대화형 대시보드 및 보고서 작성을 위한 인기 있는 솔루션으로 등장했습니다. 각 도구는 프로젝트의 복잡성과 선호하는 프로그래밍 언어에 따라 고유한 이점을 제공합니다. 이 기사에서는 각 도구를 자세히 살펴본 다음 실습 예제와 클라우드 배포를 포함하여 Bokeh에 중점을 둘 것입니다.

그래서...

보케란 무엇인가요?
Bokeh는 프레젠테이션을 위해 최신 웹 브라우저를 대상으로 하는 대화형 시각화 라이브러리입니다. 우아하고 간결한 그래픽을 제공하므로 개발자는 고급 상호 작용 기능을 갖춘 대시보드를 구축할 수 있습니다. Bokeh는 높은 수준의 인터페이스와 플롯에 대한 세부적인 제어 기능을 모두 제공하므로 Python을 사용하는 데이터 과학자 및 개발자에게 특히 적합합니다.

이 도구를 어떻게 사용할 수 있나요?

  • 종속성 설치:

pip 설치 보케
pip 설치 건니콘

  • 플롯 만들기: 이 경우에는 메인 페이지에 두 개의 플롯을 개발한 다음 "app.py"를 호출했습니다

Bokeh an interesting data tool in python for data visualization

from bokeh.layouts import column
from bokeh.models import ColumnDataSource, Select
from bokeh.plotting import figure, curdoc
import numpy as np

# Sample data for line plot
line_data = {
    'x': [1, 2, 3, 4, 5],
    'y1': [6, 7, 2, 4, 7],
    'y2': [1, 4, 8, 6, 9]
}

# Data for scatter plot
N = 4000
x_scatter = np.random.random(size=N) * 100
y_scatter = np.random.random(size=N) * 100
radii = np.random.random(size=N) * 1.5
colors = np.array([(r, g, 150) for r, g in zip(50 + 2 * x_scatter, 30 + 2 * y_scatter)], dtype="uint8")

# Create ColumnDataSource for line plot
source = ColumnDataSource(data={'x': line_data['x'], 'y': line_data['y1']})

# Create a figure for line plot
plot_line = figure(title="Interactive Line Plot", x_axis_label='X', y_axis_label='Y')
line1 = plot_line.line('x', 'y', source=source, line_width=3, color='blue', legend_label='y1')
line2 = plot_line.line('x', 'y2', source=source, line_width=3, color='red', legend_label='y2', line_alpha=0.5)

# Create a figure for scatter plot
plot_scatter = figure(title="Scatter Plot", tools="hover,crosshair,pan,wheel_zoom,zoom_in,zoom_out,box_zoom,undo,redo,reset,tap,save,box_select,poly_select,lasso_select,examine,help")
plot_scatter.circle(x_scatter, y_scatter, radius=radii,
                    fill_color=colors, fill_alpha=0.6,
                    line_color=None)

# Dropdown widget to select data for line plot
select = Select(title="Y-axis data", value='y1', options=['y1', 'y2'])

# Update function to change data based on selection
def update(attr, old, new):
    selected_y = select.value
    source.data = {'x': line_data['x'], 'y': line_data[selected_y]}
    # Update line colors based on selection
    line1.visible = (selected_y == 'y1')
    line2.visible = (selected_y == 'y2')
    plot_line.title.text = f"Interactive Line Plot - Showing {selected_y}"

select.on_change('value', update)

# Arrange plots and widgets in a layout
layout = column(select, plot_line, plot_scatter)

# Add layout to current document
curdoc().add_root(layout)
`

heroku에서 페이지를 만들고 다음 단계를 수행하세요.

  • 프로필 파일 만들기:

Bokeh an interesting data tool in python for data visualization

이 파일에는 내 경우의 예를 선언합니다.

웹: 보케 서브 --port=$PORT --address=0.0.0.0 --allow-websocket-origin=juancitoelpapi-325d94c2c6c7.herokuapp.com app.py

  • 요구사항 생성: 프로젝트에서 요구 사항.txt를 생성하고 작성하고 저장합니다

Bokeh an interesting data tool in python for data visualization

보케

  • 프로젝트 푸시:

git에서 프로젝트를 푸시할 때와 비슷하지만 이 경우 최종 마스터 푸시는 heroku에 있습니다

git 초기화
자식 추가 .
git commit -m "Gunicorn으로 Bokeh 앱 배포"
git push heroku 마스터

  • 그리고 드디어...

플롯 보케로 페이지를 볼 수 있습니다.

Bokeh an interesting data tool in python for data visualization

Bokeh an interesting data tool in python for data visualization

  • 결론

Bokeh의 진정한 힘은 웹 환경에서 대화형 대시보드를 제공하여 실시간 데이터 모니터링과 대규모 데이터 세트에 이상적이라는 점입니다. Gunicorn을 사용하여 Heroku와 같은 클라우드 서비스에 Bokeh 애플리케이션을 배포하면 유지 관리 및 업데이트가 용이하고 확장 가능하며 프로덕션에 즉시 사용 가능한 대시보드를 구축할 수 있습니다.

위 내용은 Bokeh는 데이터 시각화를 위한 Python의 흥미로운 데이터 도구입니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.