Visdom 介绍 | 一
用于创建,组织和共享实时丰富数据可视化的灵活工具。支持Python。
- 概述
- 概念
- 设置
- 用法
- API
- 待办事项
- 贡献
概述
Visdom旨在促进(远程)数据的可视化,重点是支持科学实验。

为你自己和你的团队成员生成图表,图像和文本的可视化。

以编程方式或通过用户界面来组织可视化空间,以创建实时数据的面板,来检查实验结果或调试实验代码。

概念
Visdom具有一组简单的特征,可以针对各种用例进行组合。
Windows

用户界面从空白开始,你可以在其中填充图表,图像和文本。这些出现在窗口中,你可以拖放,调整大小和销毁它们。这些窗口位于“envs”中,并且“envs”的状态跨会话存储。你可以下载本包Windows的相关内容,该内容包括“svg”中的绘图。
提示:你可以使用浏览器的缩放比例来调整UI的比例。
回调
python Visdom实现支持窗口上的回调。该演示以文本编辑器的形式显示了此示例。这些回调的功能允许Visdom对象接收前端中发生的事件并对事件做出反应。
你可以通过向你要订阅的窗口ID的事件处理程序字典添加一个函数来订阅事件的窗口,方法是使用处理程序和窗口ID调用viz.register_event_handler(handler,win_id)。可以将多个处理程序注册到同一窗口。你可以使用viz.cleareventhandlers(win_id)从窗口中删除所有事件处理程序。当该窗口发生事件时,你的回调将被调用,其中字典包含以下内容:
event_type:以下事件类型之一pane_data:该窗口的所有存储内容,包括布局和内容。eid:当前环境IDtarget:事件被调用的窗口ID
其他参数在下面定义。
现在支持以下回调事件:
Close-在关闭窗口时触发。返回仅包含上述字段的字典。KeyPress-按下键时触发。包含其他参数:key-所按下键的字符串表示形式(应用状态修饰符,例如SHIFT)key_code-所按下键的javascript事件键码(无修饰符)
PropertyUpdate-在“属性”窗格中更新属性时触发propertyId-在属性列表中的位置value-新属性值
Click-单击“图像”窗格时触发,具有一个参数:image_coord-字典,其中x字段和y字段用于在可能缩放/平移的图像(不是封闭窗格)的坐标框中的单击坐标。
环境

你可以使用envs划分可视化空间。默认情况下,每个用户都有一个名为main的环境。可以在UI中或以编程方式创建新的环境。envs的状态会长期保存。环境能够保留完全不同的区域。
你可以通过以下网址访问特定的环境:http://localhost.com:8097/env/main。
如果你的服务器是托管服务器,则可以共享此URL,以便其他人也可以看到你的可视化效果。
环境由第一个“_”自动分层组织。
选择环境

在主页上,可以使用环境选择器在不同的环境之间切换。选择新环境将向服务器查询该环境中存在的图。环境选择器允许搜索和过滤新的环境。
比较环境
从主页可以使用环境选择器比较不同的环境。在复选框中选择多个环境将向服务器查询所有环境中具有相同标题的图,并将它们绘制在单个图中。创建一个附加的比较图例窗格,该窗格具有与每个选定环境相对应的数字。使用与“x_name”相对应的图例更新各个图,其中“x”是与比较图例窗格相对应的数字,而“name”是图例中的原始名称。
注意:比较环境视图对高吞吐量数据不可靠,因为服务器负责生成比较内容。所以不要比较这种绘图上会收到大量更新的环境,因为每次更新都会要求重新生成比较。如果你需要比较接收大量数据的两个图,请让它们在单个env上共享相同的窗口。
清除环境
你可以使用橡皮擦按钮删除环境中的所有当前内容。这将关闭该环境的绘图窗口,但保留新绘图的空白环境。
管理环境

按下文件夹图标将打开一个对话框,使用该对话框可以派生或强制保存当前环境,或删除任何现有环境。State部分中充分描述了此功能的使用。
Env文件:
你的环境在服务器初始化时加载,默认情况下从$HOME/.visdom/中加载。自定义路径可以作为cmd-line参数传递。通过使用删除按钮或从环境目录中删除相应的.json文件,可以删除环境。
状态
一旦创建了一些可视化文件,状态便得以维护。服务器自动缓存你的可视化文件-如果你重新加载页面,则可视化文件会重新出现。

- 保存:你可以使用“保存”按钮手动进行操作。这将序列化环境的状态(以JSON格式存储到磁盘),包括窗口位置。你可以以编程方式保存
env。
这对于配置有意义的更复杂的可视化很有帮助,例如,数据丰富的演示,模型训练仪表板或系统实验。这也使它们易于共享和重用。 - Fork:如果输入新的环境名称,保存将创建一个新的环境-有效地Fork先前的环境。
提示:开始进行编辑之前,请先Fork环境,以确保单独保存所做的更改。
筛选
你可以使用filter动态筛选包含在环境中的窗口-只需提供一个正则表达式即可匹配你要显示的窗口标题。这在涉及带有多个窗口的env的用例中(例如系统检查实验结果时)可能会有所帮助。

注意:如果保存了当前视图,则清除过滤器后将还原该视图。
视图

可以简单地通过拖动窗口顶部来管理视图,但是存在其他功能可以使视图井井有条并保存常见视图。视图管理对于在Windows的多个常见组织之间进行保存和切换非常有用。
保存/删除视图
使用文件夹图标,将打开一个对话框窗口,你可以在其中以与envs相同的方式派生视图。保存视图将保留给定环境中所有窗口的位置和大小。视图保存在visdom文件路径的$HOME/.visdom/view/layouts.json中。
注意:保存的视图是静态的,并且编辑保存的视图会将视图复制到可以进行编辑的“当前”视图。
重新打包
使用重新打包图标(9个盒子),visdom将尝试以最适合你的窗口的方式打包窗口,同时保留行/列的顺序。
注意:由于对行/列排序和
ReactGridLayout的依赖,最终的布局可能与预期的略有不同。我们正在努力改善这种体验,或者提供替代方法以提供更好的控制。
重新加载视图

使用视图下拉菜单,可以选择以前保存的视图,将当前环境中所有窗口的位置和大小恢复到上次保存该视图时的位置。
设置
需要Python 3
#从pip安装Python版服务器和客户端
#(稳定的版本,并非所有当前功能都受支持)
pip install visdom
#从源代码安装visdom
pip install -e .
#如果上述问题出现,你可以尝试以下方法
easy_install .
用法
从命令行启动服务器(可能在“屏幕”或“tmux”中):
> visdom
现在,可以通过在浏览器中转到http://localhost:8097或你自己的主机地址(如果已指定)来访问Visdom。
visdom命令等效于运行python -m visdom.server。如果上述方法不起作用,请尝试在服务器上使用SSH隧道,方法是将以下行添加到本地
~/.ssh/config中:LocalForward 127.0.0.1:8097 127.0.0.1:8097。
命令行选项
可以向服务器提供以下选项:
-port:运行服务器的端口。-hostname:运行服务器的主机名。-base_url:基本服务器的URL(默认=/)。-env_path:要重载的序列化会话的路径。-logging_level:日志记录级别(默认=INFO)。接受标准文本和数字日志记录值。-readonly:标记以只读模式启动服务器。-enable_login:标记以设置服务器的身份验证,需要用户名和密码才能登录。-force_new_cookie:标记以重置服务器使用的安全cookie,从而使当前的登录cookie无效。需要-enable_login开启。
当提供-enable_login标志时,服务器要求用户使用终端提示输入凭据。或者,你可以设置VISDOM_USE_ENV_CREDENTIALSenv变量,然后通过VISDOM_USERNAME和VISDOM_PASSWORDenv变量提供你的用户名和密码,无需手动与终端进行交互。
如果你想从bash脚本或Jupyter笔记本电脑启动visdom服务器,这个功能很有用。
VISDOM_USERNAME =username
VISDOM_PASSWORD =password
VISDOM_USE_ENV_CREDENTIALS = 1 visdom -enable_login
如果未生成Cookie文件,也可以使用“VISDOMCOOKIE”变量提供Cookie值,或者标志`-forcenew_cookie`已设置。
Python示例
import visdom
import numpy as np
vis = visdom.Visdom()
vis.text('Hello, world!')
vis.image(np.ones((3, 10, 10)))
演示
python example/demo.py
欢迎关注磐创博客资源汇总站:http://docs.panchuang.net/
欢迎关注PyTorch官方中文教程站:http://pytorch.panchuang.net/
OpenCV中文官方文档:http://woshicver.com/
Visdom 介绍 | 一的更多相关文章
- Visdom 介绍 | 二
用于创建,组织和共享实时丰富数据可视化的灵活工具.支持Python. 概述 概念 设置 用法 API 注意事项 贡献 API 要快速了解visdom的功能,请查看example目录,或阅读以下详细信息 ...
- Pytorch Visdom可视化工具
2018-12-04 14:05:49 Visdom是Facebook专门为PyTorch开发的一款可视化工具,其开源于2017年3月.Visdom十分轻量级,但却支持非常丰富的功能,能胜任大多数的科 ...
- visdom可视化pytorch训练过程
一.前言 在深度学习模型训练的过程中,常常需要实时监听并可视化一些数据,如损失值loss,正确率acc等.在Tensorflow中,最常使用的工具非Tensorboard莫属:在Pytorch中,也有 ...
- pytorch学习笔记(九):PyTorch结构介绍
PyTorch结构介绍对PyTorch架构的粗浅理解,不能保证完全正确,但是希望可以从更高层次上对PyTorch上有个整体把握.水平有限,如有错误,欢迎指错,谢谢! 几个重要的类型和数值相关的Tens ...
- 0703-可视化工具tensorboard和visdom
0703-可视化工具tensorboard和visdom 目录 一.可视化工具概述 二.TensorBoard 三.Visdom 3.1 visdom 概述 3.2 visdom 的常用操作 3.3 ...
- 深度学习与CV教程(8) | 常见深度学习框架介绍
作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/37 本文地址:http://www.showmeai.tech/article-det ...
- CSS3 background-image背景图片相关介绍
这里将会介绍如何通过background-image设置背景图片,以及背景图片的平铺.拉伸.偏移.设置大小等操作. 1. 背景图片样式分类 CSS中设置元素背景图片及其背景图片样式的属性主要以下几个: ...
- MySQL高级知识- MySQL的架构介绍
[TOC] 1.MySQL 简介 概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而 ...
- Windows Server 2012 NIC Teaming介绍及注意事项
Windows Server 2012 NIC Teaming介绍及注意事项 转载自:http://www.it165.net/os/html/201303/4799.html Windows Ser ...
随机推荐
- CSS中网格布局实战(初级)
大家好,网格布局是我们在网页布局中经常用到的,那这里我就给大家分享一篇简单的网格布局,让大家能简单明了的了解网格布局的基本内容.闲话不多说,直接进入主题! 第一步,基本的框架结构.这里直接一个div来 ...
- 彻底消灭if-else嵌套
一.背景 1.1 反面教材 不知大家有没遇到过像横放着的金字塔一样的if-else嵌套: if (true) { if (true) { if (true) { if (true) { if (tru ...
- Java面试必问之Hashmap底层实现原理(JDK1.7)
1. 前言 Hashmap可以说是Java面试必问的,一般的面试题会问: Hashmap有哪些特性? Hashmap底层实现原理(get\put\resize) Hashmap怎么解决hash冲突? ...
- 时间序列数据库(TSDB)初识与选择(InfluxDB、OpenTSDB、Druid、Elasticsearch对比)
背景 这两年互联网行业掀着一股新风,总是听着各种高大上的新名词.大数据.人工智能.物联网.机器学习.商业智能.智能预警啊等等. 以前的系统,做数据可视化,信息管理,流程控制.现在业务已经不仅仅满足于这 ...
- 《自拍教程36》段位三_Python面向对象类
函数只能面向过程,来回互相调用后顺序执行, 简单的编码项目,还能应付的过来, 复杂的大型项目,调用多了,就会乱. 如何才能不乱呢,可尝试下, 面向对象类的概念, 将现实世界的事物抽象成对象,将现实世界 ...
- npm注册源的配置
npm注册源的更换 在墙内久了,难免会碰到撞墙的时候,所幸国内也有众多 NPM 镜像可供选择,在大多数情况下我们可以使用国内的源(比如 淘宝 NPM 镜像)去替换官方的源以加快下载包的速度.不过呢,我 ...
- 神奇的 SQL 之扑朔迷离 → ON 和 WHERE,好多细节!
开心一刻 楼主:心都让你吓出来了! 狮王:淡定,打个小喷嚏而已 前情回顾 神奇的 SQL 之 联表细节 → MySQL JOIN 的执行过程(一)中,我们讲到了 3 种联表算法:SNL.BNL 和 I ...
- aosp 制作 rom 刷机 添加厂家二进制驱动 及 出厂镜像
首先介绍下背景知识. aosp 仅是一套源码,不含厂家驱动. CM安卓的厂家驱动是自行提取的. 一般的安卓手机分区,有 boot , system, user , Baseband 基带, recov ...
- PHP把图片存入数据库(非路径)【待测试】
大部分人的图片上传都是保存一个路径到数据库,这样在插入时确实快,也符合web的特点,但是在删除时就很麻烦,需要找到文件并删除,该代码能够把代码直接存入数据库,删除时一并删除.请注意:这样的话数据库大小 ...
- 有了这套微信小程序x5调试,调试一些简单的开发者工具调试不了的功能不成问题!!!!
1.首先我们需要打开微信 TBS 调试 地址是:http://debugx5.qq.com 2.然后打开手机 打开开发者模式,打开 USB 调试 3.然后 在谷歌浏览器地址栏输入 chrome://i ...
