使程序内部显示在浏览器中
appear的Python项目详细描述
出现
一个python包,用于通过流式传输将应用程序的隐藏细节神奇地显示出来。在
安装
运行pip install appear
何时以及为什么要使用“显示”?
如果您有一个python应用程序,该应用程序在运行时包含要在浏览器中可视化的信息,请使用“显示”。在
- 数据发送器的开销很低,只有一条线路可以发送数据。在
- 发送数据的应用程序不必更改它的函数签名,因为信息是通过副作用发送的。在
- 前端的开销很低,它可以处理所有与数据传输相关的事情,因此您可以专注于如何显示数据。在
- 灵活,在一个页面中处理多个可视化效果。在
结构
它有三个主要部分。在
- 从应用程序发送数据的助手函数。在
- 一个服务器,它使用插座.io在
- 一个前端软件包,可以很容易地接收从服务器发送的数据并将其用于可视化。在
用法
1。从应用程序发送数据
首先通过调用appearance helper方法将函数添加到要插入的代码库中。在
fromappearimporthelper###### Your application code here ###### In the middle of your application code add the following method call to send datahelper(url="http://localhost:5000/broadcast",# This is the url of the Appear servertarget="myVisualizationName",# Name of the visualization to updatedata={"datapoints":[1,2,3],"title":"My Graph"},# Data to send to the visualization)
data参数中发送的数据可以是任何JSON序列化数据。在
2。编写前端代码
前端代码需要3件事
- 包括插座.io服务器连接代码
- {2>连接服务器。在
- 将函数连接到可视化,例如
server.subscribe("visualizationName", update_my_vis)
。通过多次调用subscribe方法,可以一次连接多个可视化。在
下面是前端代码的完整示例
<!DOCTYPE HTML><html><head><title>Appear</title><scriptsrc="static/vis_server.js"></script><scripttype="text/javascript"charset="utf-8">// Visualization functionfunctionupdate_my_vis(msg){document.getElementById("visualizationName").textContent="Number of entities "+msg.entities+" out of "+msg.limit}// Link visualization functions to contentserver=newVisServer()server.subscribe("visualizationName",update_my_vis)</script></head><body><h1>Appear</h1><pid="visualizationName"></p></body></html>
将html保存在名为templates的新文件夹中,并调用该文件索引.html. 例如templates/index.html
3。运行显示服务器
运行显示服务器。确保templates
目录与您创建的前端代码的目录匹配。在
python -m appear.app templates
4。开始使用“显示”
打开浏览器到http://localhost:5000,然后启动应用程序。当页面加载时,你应该看到你的前端。每次应用程序调用helper方法时,浏览器中的数据都将使用链接的前端函数进行更新。在
工作样品
在samples文件夹中试用此repo中包含的样本
- 运行
python -m appear.app sample/templates
- 打开浏览器以http://localhost:5000
- 在另一个终端运行
python sample/example_app.py
- 浏览器将使用正在运行的应用程序中的实时数据进行更新。在
- 项目
标签: