Visdom可视化学习笔记(一):通过visdom画曲线和显示图片总结
文章目录
- 导入visdom
- 设置线性和颜色
- 画一条折线
- 画两条折线
- 同时画多条曲线
- 显示实时的动态曲线
- 显示图片
- 显示文本
导入visdom
import visdom
viz = visdom.Visdom()
执行代码的时候还要通过终端输入python -m visdom.server
设置线性和颜色
import numpy as np
import visdom
viz=visdom.Visdom()win = viz.line(X=np.column_stack((np.arange(0, 10),np.arange(0, 10),np.arange(0, 10),)),Y=np.column_stack((np.linspace(5, 10, 10),np.linspace(5, 10, 10) + 5,np.linspace(5, 10, 10) + 10,)),opts={'dash': np.array(['solid', 'dash', 'dashdot']),'linecolor': np.array([[0, 101, 255],[0, 61, 255],[255, 255, 0],]),'title': 'Different line dash types'}
)
结果:
画一条折线
import visdom
viz = visdom.Visdom()
viz.line(X=[1, 2, 3, 4], # x坐标Y=[1, 4, 9, 16], # y值win="line1", # 窗口idname="test line", # 线条名称update='append', # 以添加方式加入opts={'showlegend': True, # 显示网格'title': "Demo line in Visdom",'xlabel': "x1", # x轴标签'ylabel': "y1", # y轴标签},)
结果:
画两条折线
import visdom
viz = visdom.Visdom()
viz.line(X=[1, 2, 3, 4], # x坐标Y=[1, 4, 9, 16], # y值win="line1", # 窗口idname="test line", # 线条名称update='append', # 以添加方式加入opts={'showlegend': True, # 显示网格'title': "Demo line in Visdom",'xlabel': "x1", # x轴标签'ylabel': "y1", # y轴标签},)
viz.line(X=[1, 2, 3, 4], Y=[0.5, 2, 4.5, 8],name="test line2", win='line1', update='append')
结果:
同时画多条曲线
import numpy as np
import visdom
viz=visdom.Visdom()
name = ['y=x^2', 'y=kx+b']
X = np.linspace(-5, 5, 100) # (100,)
viz.line(Y=np.column_stack((X * X, np.sqrt(X + 5))), # (100, 2)X=np.column_stack((X, X)), # (100, 2)opts=dict(markers=False, legend=name),)
结果:
显示实时的动态曲线
import numpy as np
import visdom,time
viz=visdom.Visdom()x, y = 0, 0for i in np.linspace(0, 2 * np.pi, 1000):x = iy = np.sin(x)viz.line(X=np.array([x]), Y=np.array([y]), win='sin-realtime', update='append')time.sleep(0.0001)
from visdom import Visdom
import numpy as np
import torchviz = Visdom(env='test')
#这句话就新建一个连接客户端for i in range(0,10):x = torch.tensor([i])y = xviz.line(X=x, Y=y, win='polynomial', update='append' if i>0 else None)#updateTrace新增一条线
x = torch.arange(0,9,0.1)
y = (x**2) / 9
viz.line(X=x, Y=y, win='polynomial', name='this is a new Trace',update='append')
结果:
显示图片
viz.image的功能可分为如下两类
- image接收一个二维或三维向量,HxW或3×HxW,前者是黑白图像,后者是彩色图像。
- images接收一个四维向量NxCxHxW,C可以是1或3,分别代表黑白和彩色图像。可实现类似torchvision中makegrid的功能,将多张图片拼接在一起。images也可以接收一个二维或三维的向量,此时它所实现的功能与image一致。
from visdom import Visdom
import numpy as np
import torch
viz = Visdom(env='test')
# 这句话就新建一个连接客户端
# 可视化一张随机的黑白图片
viz.image(torch.randn(64, 64).numpy())
# 可视化一张随机的彩色图片
viz.image(torch.randn(3, 64, 64).numpy(), win='random2')
# 可视化36张随机的彩色图片,每行6张
# viz.image(torch.randn(36,3,64,64).numpy(), nrow=6, win='random3',opts={'title':'random_imgs'})
viz.images(torch.randn(36, 3, 64, 64).numpy(), nrow=6, win='random3', opts={'title': 'random_imgs'})
结果:
显示文本
from visdom import Visdom
import numpy as np
import torchviz = Visdom(env='test')
# 这句话就新建一个连接客户端
a='this is a test'
viz.text(a, win='label', opts=dict(title='batch-y'))
结果:
Visdom可视化学习笔记(一):通过visdom画曲线和显示图片总结相关推荐
- R语言可视化学习笔记之相关矩阵可视化包ggcorrplot
本文转载自"R语言中文社区",己获授权. 作者简介Introduction taoyan:伪码农,R语言爱好者,爱开源. 个人博客: https://ytlogos.github. ...
- R语言可视化学习笔记之ggridges包绘制山峦图
作者:严涛 浙江大学作物遗传育种在读研究生(生物信息学方向)伪码农,R语言爱好者,爱开源. 严涛老师的绘图教程还有: gganimate |诺奖文章里面的动图绘制教程来了!! ggplot2学习笔记之 ...
- python气象数据可视化学习笔记6——利用python地图库cnmaps绘制地图填色图并白化
文章目录 1. 效果图 2. cnmaps简介及安装 2.1 写在前面 2.2 cnmaps简介和安装 3. 导入库 4. 定义绘图函数 4.1 使用get_adm_maps返回地图边界 4.2 ax ...
- ECharts数据可视化学习笔记和应用
ECharts数据可视化学习笔记和应用 一.概念 二.Echarts使用 使用步骤 三.Echarts-基础配置 四.柱状图图表1 五.柱状图图表2 六.折线图1 七.折线图2 八.饼状图1 九.饼形 ...
- vue文件里在style的样式需要什么loader_Vue学习笔记之Webpack中css、less、图片等文件处理...
一.webpack中使用css文件: loader是webpack中一个非常核心的概念,去转化webpack不能转化或打包的文件. 安装loader: 官网介绍: 安装: cnpm install - ...
- C++下opencv学习笔记(一)(图像的简单读取丶显示与存储)
C++下opencv学习笔记(一)(图像的简单读取丶显示与存储) 前言 学习C++ OpenCV,第一需要具备面向对象语言的基础,第二要对图像处理机器学习有基础了解,容易入门.觉得自己基础已经有了可以 ...
- 计算机图形学 学习笔记(十一):曲线曲面(三):B样条 曲线与曲面
接上文 计算机图形学 学习笔记(十):曲线曲面(二):Bezier 曲线与曲面 8.4 B样条曲线产生背景及定义 B样条产生的背景 Bezier 曲线曲面有很多优点,比如说可以用鼠标拖动控制顶点以改变 ...
- R语言可视化学习笔记之ggridges包
作者:严涛 浙江大学作物遗传育种在读研究生(生物信息学方向)伪码农,R语言爱好者,爱开源. 严涛老师的绘图教程还有: gganimate |诺奖文章里面的动图绘制教程来了!! ggplot2学习笔记之 ...
- css中怎么加入立体模型,CSS学习笔记二:css 画立体图形
继上一次学了如何去运用css画平面图形,这一次学如何去画正方体,从2D向着3D学习,虽然有点满,但总是一个过程,一点一点积累,然后记录起来. Transfrom3D 在这一次中运用到了一下几种属性: ...
最新文章
- 解决keepalived脑裂问题
- C# 如何实现pfx与snk密钥文件的转换
- oracle中blob转换,BLOB转换为CLOB的函数(oracle中执行)
- 【转】DICOM文件格式剖析(初识)
- 2018 Machine Learning
- linux内核丢包分析工具,Linux模拟网络丢包与延迟的方法
- 令人失望的vb 的范型
- 《Linux系统最佳实践工具:命令行技术》新书抢先看
- 【Swift】401状态处理流程
- 如何检测ip和端口是否连通
- 分析一种简单的提高功率因数的电路——填谷电路
- linux系统下的动态壁纸,桌面应用|动态壁纸给linux发行版添加活力背景
- 我的气垫船充满了鳗鱼
- C++ 语言变量的定义、声明和初始化
- 设计模式-责任型模式(责任链模式)
- 网易云音乐外链的真实地址下载方法
- 【日期】找找哪些日期是星期几
- Python turtle 画正多边形和多角形
- selenium+phantomjs 爬虫 获取中国移动,电信,联通通话记录
- Linux注意之重置mysql账号密码