Visdom常用代码
// 安装
pip install visdom
//启动
python -m visdom.server
# 导包
import visdom
# 实例化
viz = visdom.Visdom(port=8097, server="127.0.0.1",env="OriLinearGNN")
# 添加数据
viz.line(Y=np.array([[y1, y2]]),
X=np.array([x]),
update='append',
win = "train_loss",
opts=dict(showlegend=True, title='loss&acc', legend=['loss', 'acc']))
• opts.title:图形标题
• opts.width:图形宽度
• opts.height:图形高度
• opts.showlegend:显示图例("true"或"false")
• opts.xtype:x轴的类型('linear'或'log')
• opts.xlabel:x轴的标签
• opts.xtick:在x轴上显示刻度(boolean)
• opts.xtickmin:x轴上的第一个刻度(number)
• opts.xtickmax:x轴上的最后一个刻度(number)
• opts.xtickvals:x轴上的刻度线位置("number" s的"table"表)
• opts.xticklabels:勾选x轴上的标签(strings的table)
• opts.xtickstep:x轴刻度之间的距离(number)
• opts.xtickfont:x轴标签的字体(字体信息的字典(https://plot.ly/javascript/reference/#layout-font))
• opts.ytype:y轴的类型('linear'或'log')
• opts.ylabel:y轴的标签
• opts.ytick:在y轴上显示刻度(boolean)
• opts.ytickmin:y轴上的第一个刻度(number)
• opts.ytickmax:y轴上的最后一个刻度(number)
• opts.ytickvals:y轴上的刻度位置(number类型的s的table)
• opts.yticklabels:在y轴上打勾标签(string类型的s的table)
• opts.ytickstep:y轴上刻度线之间的距离(number)
• opts.ytickfont:y轴标签的字体(字体信息的字典(https://plot.ly/javascript/reference/#layout-font))
• opts.marginleft:左边距(以像素为单位)
• opts.marginright:右边距(以像素为单位)
• opts.margintop:上边距(以像素为单位)
• opts.marginbottom:底边距(以像素为单位)
vis.line
此函数绘制线图。它以一个N或NxM张量作为输入,"Y"指定"M"行的值(连接"N"个点)绘图。它还需要一个可选的X张量来指定相应的x轴值;X可以是N张量(在这种情况下线将共享相同的x轴值)或具有与"Y"相同的尺寸。
更新可以用来有效地更新现有图的数据。使用’append’附加数据,'replace’使用新数据,或’remove’删除由name指定的跟踪。如果要更新单个跟踪,请使用"名称"指定要更新的跟踪的名称。全部为NaN的更新数据将被忽略(可用于屏蔽更新)。
支持以下opts:
• opts.fillarea:填充线以下的区域(boolean)
• opts.markers:显示标记(boolean;默认=false)
• opts.markersymbol:标记符号(string;默认='dot')
• opts.markersize:标记大小(number;默认='10')
• opts.linecolor:线条颜色(np.array;默认=None)
• opts.dash:每行的行破折号类型(np.array;默认='solid'),为solid,dash,dashdot或dash之一,大小应与画线
• opts.legend:table包含图例名称
• opts.layoutopts:图形后端为布局接受的任何其他选项的dict。例如layoutopts = {'plotly':{'legend':{'x':0,'y':0}}}。
• opts.traceopts:dict将跟踪名称或索引映射到plot.ly接受的其他选项的dict。
• opts.webgl:使用WebGL进行绘图("boolean";默认="false")。如果绘图包含太多点,则速度更快。谨慎使用,因为浏览器在单个页面上最多允许两个WebGL上下文。
vis.bar
此函数绘制规则的,堆叠的或分组的条形图。它需要输入一个N或NxM张量X来指定每个条形。如果"X"包含"M"列,则对应于每一行的值是堆叠还是分组(取决于"opts.stacked"的方式)。除了X,还可以指定一个(可选的)N张量Y。包含相应的x轴值。
当前支持以下特定于图的opts:
• opts.rownames:table包含x轴标签
• opts.stacked:在X中堆叠多列
• opts.legend:包含图例标签的table
• opts.layoutopts:图形后端为布局接受的任何其他选项的dict。例如layoutopts = {'plotly':{'legend':{'x':0,'y':0}}}。
vis.histogram
此函数绘制指定数据的直方图。它作为输入一个N张量X来指定要构造其的数据直方图。
当前支持以下特定于图的opts:
• opts.numbins:箱数(number;默认=30)
• opts.layoutopts:图形后端为布局接受的任何其他选项的dict。例如layoutopts = {'plotly':{'legend':{'x':0,'y':0}}}。
vis.boxplot
此函数绘制指定数据的箱形图。它作为输入,一个"N"或"NxM"张量"X",用于指定其中的"N"个数据值来构造"M"箱形图。
当前支持以下特定于图的opts:
• opts.legend:X中每个列的标签
opts.layoutopts:图形后端为布局接受的任何其他选项的dict。例如layoutopts = {'plotly':{'legend':{'x':0,'y':0}}}。
自定义图
绘图功能采用可选的opts表作为输入,可用于更改(通用或特定于绘图的)绘图属性。所有输入参数都在一个表中指定;输入参数根据输入表中的键进行匹配。
下列opts是通用的,因为它们对于所有可视化都是相同的(plot.image,plot.text,plot.video和plot.audio除外):
• opts.title:图形标题
• opts.width:图形宽度
• opts.height:图形高度
• opts.showlegend:显示图例("true"或"false")
• opts.xtype:x轴的类型('linear'或'log')
• opts.xlabel:x轴的标签
• opts.xtick:在x轴上显示刻度(boolean)
• opts.xtickmin:x轴上的第一个刻度(number)
• opts.xtickmax:x轴上的最后一个刻度(number)
• opts.xtickvals:x轴上的刻度线位置("number" s的"table"表)
• opts.xticklabels:勾选x轴上的标签(strings的table)
• opts.xtickstep:x轴刻度之间的距离(number)
• opts.xtickfont:x轴标签的字体(字体信息的字典(https://plot.ly/javascript/reference/#layout-font))
• opts.ytype:y轴的类型('linear'或'log')
• opts.ylabel:y轴的标签
• opts.ytick:在y轴上显示刻度(boolean)
• opts.ytickmin:y轴上的第一个刻度(number)
• opts.ytickmax:y轴上的最后一个刻度(number)
• opts.ytickvals:y轴上的刻度位置(number类型的s的table)
• opts.yticklabels:在y轴上打勾标签(string类型的s的table)
• opts.ytickstep:y轴上刻度线之间的距离(number)
• opts.ytickfont:y轴标签的字体(字体信息的字典(https://plot.ly/javascript/reference/#layout-font))
• opts.marginleft:左边距(以像素为单位)
• opts.marginright:右边距(以像素为单位)
• opts.margintop:上边距(以像素为单位)
• opts.marginbottom:底边距(以像素为单位)