在使用過程中一直以為要在哪個指定的environment下(即參數env)繪制內容,就必須在使用時聲明
比如如果不聲明,默認的就是在'main'環境下,端口為8097:
viz = visdom.Visdom()
這個時候如果想要在另一個環境,比如'mydata',其實並不用重新聲明下面的語句:
viz = visdom.Visdom(env='mydata')
可以仍使用viz = visdom.Visdom()的viz
只要在你繪制內容的時候注明使用的是env='mydata'這個環境,如果現在還沒有該環境,visdom會自動生成,舉例說明:

可見我此時是沒有'mydata'這個環境的,運行命令:
import visdom viz = visdom.Visdom() # 查看在該環境'mydata'下是否有窗口'win_A' print(viz.win_exists(env='mydata', win='win_A')) viz.image( np.random.rand(3, 512, 256), opts=dict(title='Random!', caption='How random.'), env='mydata', win='win_A' ) print(viz.win_exists(env='mydata', win='win_A')) print(viz.win_exists(env='mydata', win='win_B'))
返回:
None
True
False
因此一開始沒有'mydata'這個環境,所以返回None
之后指定在上面繪圖會自動生成該環境和窗口,所以返回True
返回False是因為在'mydata'這個環境中沒有窗口'win_B'
這個時候查看為:

但是這個時候查看環境json文件存儲路徑中,發現還沒有該'mydata'環境的json文件:

生成辦法有兩種:
1)手動點擊頁面的存儲按鈕來保存該環境,這樣就能夠生成該json文件了:

2)命令行保存方法:
viz.save(['mydata'])
返回:
'["mydata"]'
運行該命令后就發現.visdom文件夾下生成了mydata.json文件:

