繪制有填色效果的用于弱相互作用分析的RDG散點圖的方法
繪制有填色效果的用于弱相互作用分析的RDG散點圖的方法
文/Sobereva @北京科音
First release: 2017-Dec-17 Last update: 2022-Aug-11
2010年提出的用于分析弱相互作用的RDG方法(文獻中也普遍叫NCI方法)已被廣泛用于考察各種分子間/分子內弱相互作用了,筆者也寫過不少相關文章,不了解此方法的者看《使用Multiwfn圖形化研究弱相互作用》(http://www.shanxitv.org/68)以及里面提及的相關文章。能做RDG分析的程序不少,Multiwfn(http://www.shanxitv.org/multiwfn)是其中最流行、最強大、最好用的。在上面的博文里已經介紹了怎么在Multiwfn中直接繪制RDG vs sign(lambda2)rho的散點圖來考察弱相互作用。一些文章里的這種散點圖還加上了填色效果,可以使得對應不同橫坐標的spike的顏色一目了然,便于與Multiwfn+VMD繪制的RDG填色等值面圖相對應來討論問題。其實這種圖稍有photoshop使用技能的人都可以不太困難地作出來,就是把VMD的色彩刻度條在ps里拉伸成與散點圖作圖范圍相同的大小,墊在Multiwfn給出的散點圖下方的圖層,然后再把散點圖的圖層當中作圖區域的黑色部分以色彩范圍選擇方式選中,刪除,透出來下層的色彩刻度層即可。不過肯定有不少人嫌這種做法麻煩,此文介紹一種利用gnuplot程序的簡單快捷的方法繪制這種填色RDG散點圖。
讀者請使用2019-Aug-24及之后更新的Multiwfn。這里用通過苯酚二聚體來示例,相應的波函數文件是Multiwfn文件包里examples目錄下的PhenolDimer.wfn。本文的操作在《使用Multiwfn做NCI分析展現分子內和分子間弱相互作用》(https://www.bilibili.com/video/av71561024)里也有視頻演示。
啟動Multiwfn,依次輸入以下命令,讓Multiwfn把此體系的RDG vs sign(lambda2)rho的散點數據導出到當前目錄下的output.txt中。
examples\PhenolDimer.wfn
20 //弱相互作用圖形化分析
1 //NCI分析
3 //高質量格點
2 //導出散點數據
gnuplot是個免費的輕量級的基于命令行的數據作圖程序,各種系統都支持,可以在這里下載:http://www.gnuplot.info。本文用的是gnuplot 5.4 Windows版。將output.txt放到gnuplot目錄下的bin子目錄下,然后將Multiwfn目錄下的examples\scripts\RDGscatter.gnu這個繪圖腳本也拷到此目錄下。開啟操作系統的命令行模式(例如Windows下的cmd環境)并進入此目錄,運行命令gnuplot RDGscatter.gnu(對于Windows用戶,這一步不知道怎么弄的話直接把RDGscatter.gnu拖到gnuplot.exe圖標上也行),就會在當前目錄下產生RDGscatter.ps,這就是填色散點圖的postscript格式的文件了。這是一種矢量圖形格式,可無損縮放,很多程序都可以查看。比如可以直接用acrobat打開,打開后可以無損縮放。也可以用photoshop打開,打開的時候可以選擇產生像素為多大的圖片。如果機子里裝了ghostscript程序,也可以用小巧且強大的看圖程序irfanview觀看。如果你懶得裝單機程序,也可以用免費的在線程序https://cloudconvert.com/image-converter把ps格式轉成常見圖像格式。此例效果如下:
RDGscatter.gnu腳本里有很多參數可以設定,比較關鍵的參數就是X,Y軸以及色彩刻度軸的上下限(x/y/cbrange后面的值)、標簽的數值范圍和步長(x/y/cbtic后面的值)、散點的大小(pointsize后面的值),以及色彩刻度的定義。筆者習慣在VMD中用-0.035~0.02來對RDG等值面著色,色彩刻度是默認的藍-綠-紅,因此腳本中可以看到這樣的設定
set palette defined (-0.035 "blue",-0.0075 "green", 0.02 "red")
如果要把填色的散點圖與VMD繪制的填色的RDG等值面圖相對照,則二者色彩刻度設定必須嚴格一致。比如在Multiwfn目錄下的examples\RDGfill.vmd文件就是VMD里繪制填色等值面圖的腳本,這里面mol scaleminmax top 1那一行后面的值應該設為-0.035 0.02才能與上圖來對照(默認就是如此)。在這種色彩刻度下繪制的苯酚二聚體的RDG填色圖如下所示,很明顯散點圖上各個spike位置和RDG填色圖上的等值面通過顏色很容易進行一一對應。
筆者在《使用IRI方法圖形化考察化學體系中的化學鍵和弱相互作用》(http://www.shanxitv.org/598)中介紹的我提出的IRI方法比RDG方法明顯更強大,不僅可以展現弱相互作用區域,還可以展現化學鍵作用區域,因此建議用IRI取代RDG。Multiwfn里IRI分析的界面和RDG分析如出一轍,可以導出IRI vs sign(lambda2)rho的散點數據到output.txt。之后用examples\scripts\IRIscatter.gnu(2022-Jul-16及以后更新的Multiwfn才有)代替上文的RDGscatter.gnu就可以繪制出填色的散點圖。如果把腳本里的橫坐標范圍設大,比如設到-0.05到0.03范圍,還可以使散點圖把化學鍵作用區域的spike展現出來。例子看Multiwfn手冊4.20.4節。