>  기사  >  백엔드 개발  >  빅데이터 화면을 만드는 파이썬 코드 50줄!

빅데이터 화면을 만드는 파이썬 코드 50줄!

王林
王林앞으로
2023-04-13 10:13:051834검색

빅데이터 화면을 만드는 파이썬 코드 50줄!

PywebIO 소개

PywebIO 모듈은 개발자가 HTML 및 JavaScript 없이 웹 애플리케이션이나 브라우저 기반 GUI 애플리케이션을 빠르게 구축하는 데 도움이 될 수 있습니다. PywebIO는 일반적으로 사용되는 일부 시각화 모듈과 결합하여 큰 시각적 화면을 만들 수도 있습니다. .

먼저 필요한 모듈을 설치해 보겠습니다.

pip install pywebio
pip install cutecharts

위에서 언급한 Cutecharts 모듈은 Python에서 손으로 그린 ​​스타일의 시각화 아티팩트입니다. PywebIO 모듈과 결합하여 차트를 그리는 효과를 살펴보겠습니다. :

from cutecharts.charts import Bar
from cutecharts.faker import Faker
from pywebio import start_server
from pywebio.output import put_html
def bar_base():
chart = Bar("Bar-基本示例", width="100%")
chart.set_options(labels=Faker.choose(), x_label="I'm xlabel", y_label="I'm ylabel")
chart.add_series("series-A", Faker.values())
put_html(chart.render_notebook())
if __name__ == '__main__':
start_server(bar_base, debug=True, port=8080)

output

빅데이터 화면을 만드는 파이썬 코드 50줄!

위 코드의 논리는 이해하기 어렵지 않습니다. 먼저 히스토그램 Bar() 객체를 인스턴스화한 다음 X축에 해당하는 레이블과 Y축에 해당하는 값을 입력합니다. 마지막으로 put_html(PywebIO 모듈에서) 메서드를 호출하면 URL이 표시됩니다.

빅데이터 화면을 만드는 파이썬 코드 50줄!

브라우저에 URL을 입력하시면 우리가 그린 차트를 보실 수 있습니다. 물론, Cutecharts 모듈에는 다양한 차트를 연결하여 큰 시각적 화면을 생성하는 Page() 메서드가 있습니다. 코드는 다음과 같습니다.

def bar_base():
chart = Bar("Bar-基本示例", width="100%")
chart.set_options(labels=Faker.choose(), x_label="I'm xlabel", y_label="I'm ylabel")
chart.add_series("series-A", Faker.values())
return chart
def pie_base() -> Pie:
chart = Pie("标题", width="100%")
........
return chart
def radar_base() -> Radar:
chart = Radar("标题", width="100%")
......
return chart
def line_base() -> Line:
chart = Line("标题", width="100%")
......
return chart
def main():
page = Page()
page.add(pie_base(), pie_base(), radar_base(), line_base(), bar_base())
put_html(page.render_notebook())
if __name__ == '__main__':
start_server(main, debug=True, port=8080)

output

빅데이터 화면을 만드는 파이썬 코드 50줄!

PywebIO와 Pyecharts의 조합

PywebIO 모듈이 충족합니다 Pyecharts 모듈에서 코드의 논리는 기본적으로 Cutecharts의 코드 논리와 동일합니다. 먼저 차트 객체가 인스턴스화되고 데이터를 추가하고 차트 스타일을 설정한 후 최종적으로 put_html() 메서드가 호출됩니다. 브라우저에 최종 결과를 표시합니다.

# `chart` 是你的图表的实例
pywebio.output.put_html(chart.render_notebook())

이 경우 Pyecharts에서 조합 구성 요소를 호출하여 각각 그려진 차트를 표시합니다. 코드는 다음과 같습니다.

def bar_plots():
bar = (
Bar()
.add_xaxis(Faker.choose())
.add_yaxis("商家A", Faker.values())
.add_yaxis("商家B", Faker.values())
.set_global_opts(title_opts=opts.TitleOpts(title="Grid-Bar"))
)
return bar
def line_plots():
line = (
Line()
.add_xaxis(Faker.choose())
.add_yaxis("商家A", Faker.values())
.add_yaxis("商家B", Faker.values())
.set_global_opts(
title_opts=opts.TitleOpts(title="Grid-Line", pos_top="48%"),
legend_opts=opts.LegendOpts(pos_top="48%"),
)
)
return line
def main():
c = (
Grid()
.add(bar_plots(), grid_opts=opts.GridOpts(pos_bottom="60%"))
.add(line_plots(), grid_opts=opts.GridOpts(pos_top="60%"))
)
c.width = "100%"
put_html(c.render_notebook())
if __name__ == '__main__':
start_server(main, debug=True, port=8080)

output

빅데이터 화면을 만드는 파이썬 코드 50줄!

PywebIO와 Bokeh의 조합

PywebIO와 Bokeh의 조합 구문은 위와 약간 다릅니다.

from bokeh.io import output_notebook
from bokeh.io import show
output_notebook(notebook_type='pywebio')
fig = figure(...)
...
show(fig)

예를 들어 간단한 히스토그램을 그려보면 코드는 다음과 같습니다.

def bar_plots():
output_notebook(notebook_type='pywebio')
fruits = ['Apples', 'Pears', 'Nectarines', 'Plums', 'Grapes', 'Strawberries']
counts = [5, 3, 4, 2, 4, 6]
p = figure(x_range=fruits, plot_height=350, title="Fruit Counts",
 toolbar_location=None, tools="")
p.vbar(x=fruits, top=counts, width=0.9)
p.xgrid.grid_line_color = None
p.y_range.start = 0
show(p)
if __name__ == "__main__":
start_server(bar_plots, debug=True, port=8080)

output

빅데이터 화면을 만드는 파이썬 코드 50줄!

Browser- 기반 GUI 애플리케이션

Pywebio 모듈을 다양한 차트를 그리기 위해 일반적으로 사용되는 시각화 모듈과 결합하는 것 외에도 이를 사용하여 탐색 기반 그래픽 인터페이스를 구축할 수도 있습니다. 먼저 가장 간단한 애플리케이션을 만들어 보겠습니다.

from pywebio.input import *
from pywebio.output import *
data = input_group(
"用户数据",
[
input("请问您的名字是: ", name="name", type=TEXT),
input("输入您的年龄", name="age", type=NUMBER),
radio(
"哪个洲的",
name="continent",
options=[
"非洲",
"亚洲",
"澳大利亚",
"欧洲",
"北美洲",
"南美洲",
],
),
checkbox(
"用户隐私条例", name="agreement", options=["同意"]
),
],
)
put_text("表格输出:")
put_table(
[
["名字", data["name"]],
["年龄", data["age"]],
["位置", data["continent"]],
["条例", data["agreement"]],
]
)

output

빅데이터 화면을 만드는 파이썬 코드 50줄!

일부 함수 메소드에 대한 설명은 다음과 같습니다.

  • input(): 텍스트 내용 입력
  • radio(): 라디오 버튼을 나타냅니다.
  • checkbox(): 다중 선택을 나타냅니다. box
  • input_group(): 입력 그룹을 나타냅니다.
  • put_table(): 출력 그룹을 나타냅니다.
  • put_text(): 출력 텍스트를 나타냅니다.

위 내용은 빅데이터 화면을 만드는 파이썬 코드 50줄!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 51cto.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제