前言:
以前在實驗室跑電泳時,雖然聽過有軟體可以計算出,在膠體電泳之後目標片段的距離,但我一直没有親自了解過,一是因為用不到,二則是因為用不到,三還是因為用不到。直到 PTT 上有網友詢問使用 MolWt 巨集 (Macros) 時發生問題的解法後,才想試著使用看看。由於該巨集有附說明,因此可以按步驟一步一步來。但問題也就發生在明明按著步驟來,卻無法得到結果而卡關。後來,研究了一個晚上之後,才試出了解決方法。不過,這個解決方法可能並不適用於其他操作環境,使用時得稍稍微調一下。而經過和 PTT 網友的討論發現,他的問題和我的問題也不盡相同,但是可以相互參照調整。
以下,便試著按照說明文件的步驟一一來進行,並附上可能碰到的問題和可行的解決方案。因為整個操作步驟其實很簡單,只是說明上複雜囉唆了些。下文中是以 DNA 電泳為例,但是拿 protein 電泳的圖來分析也是可行的。
步驟:
I.準備
要準備好軟體 ImageJ、欲分析的膠體電泳圖檔案以及 ImageJ 的巨集,同時也是本文的主角,MolWt。
ImageJ 目前最新版本是 1.49s,可以從 ImageJ 的官方網站 (http://imagej.nih.gov/ij/) 下載。但網站給的似乎只到 1.48 版;我是使用 ImageJ 的檢查更新並自動下載安裝功能,所以目前才會使用到 1.49s 版。ImageJ 在各平台有版本差異,安裝時需要注意;其中也有跨平台版本可用;它需要 Java 才能運行。下圖是我的使用環境:
Mac OS X (10.10.3 Yosemite)
Java 1.6.0_65 (64-bit)
ImageJ 1.49s
ImageJ 版本 |
PTT 網友的操作環境是 Windows 7 (64-bit),ImageJ 版本為 1.48v。後來改升到 1.49s 並按照操作說明進行之後,之前碰到的問題似乎都解決了。
MolWt 似乎是某家德國電泳和顯像儀器廠商所寫下的 ImageJ 巨集,目前並未被收錄在 ImageJ 的預設巨集中,也未收錄在 ImageJ 官網上的的巨集列表裡。可以從廠商的網站 (http://www.phase-hl.com/imagej.htm) 下載。這網站非常陽春,別被嚇到了。另外,巨集的說明文件也最好一併下載了,是PDF (http://www.phase-hl.com/ImageJ/MolWt-Macros.pdf) 檔。
II.安裝巨集
ImageJ 的 folders |
ImageJ/plugins/Analyze/ |
Plugins 安裝 |
這一個巨集的反安裝,我是手動從 ImageJ 程式底下的資料夾裡移除,才會在重開啟程式後看到作用。不曉得有没有更方便的方法。
在開始之前,我得聲明以下的步驟是我和 PTT 網友各自胡亂研究後的結果。基本上就是按照說明文件上的指示操作,待遇見問題時再行更動測試可行性。不保證在不同環境下能成功。III.操作解說
- 首先,以純文字編輯器準備一份純文字檔。只寫下 marker 的 basepair number,一行只能有一個數值,不要加單位或其他資訊,可以不按順序,存檔時以 txt 為副檔名。最好是將所有 marker 片段的數值都填上。以下是以 100 bps DNA marker 為例:
Marker - 從 ImageJ 打開要分析的圖檔。此處是以一份 2% agarose gel 分析 312 bps PCR product(s) 的圖檔為例。經過測試,到現在為止,無論是 JPG、PNG 或 TIFF 檔,都能正常使用。
2% Agarose Gel 電泳圖 - 使用 Gel Analysis 功能中的 Plot Lanes(快捷鍵是 command+3/control+3):
Gel analysis Plot of Electrophoresis - (Marker)
因為 DNA 電泳膠圖是黑底白片段,所以 ImageJ 畫出來的圖,各個波峰都是向下。如果看得不習慣,可以事先反轉圖檔的顏色,或是利用 ImageJ 來反轉顏色也可以;反轉之後要存檔,不然顯示的波峰依然會往下。另外,DNA 電泳照相設備所得到的圖,預設中都是灰階的。如果不是灰階圖,則必須先將圖檔改成灰階模式。ImageJ 中也可以轉換顏色模式。 - 依據作者說明,將原檔案 MolWt.txt 安裝進 ImageJ 之後,分析時只要點選其中的分項或快捷鍵就可以使用。但不幸的是,在我的操作環境中,這方法並不可行。每一次點選 macro 中的 MolWt,它只會做一件事,就是『Open MW File』,要求我打開先前準備好的 marker 純文字檔案,就算已經打開過了,它還是一再地要我先讀取 marker 檔。我曾不死心地重新開啟 ImageJ、或移除並重新安裝 MolWt、或重新登入使用者、或重開機器……一點用都没有,它根本就不會自動形成這個巨集的四個操作功能。還有就是操作的快捷鍵,在我的環境中也無效或是另有他用,這應該是相衝突了;反正我平常也不用 ImageJ 的快捷鍵,所以也還好。 後來好奇地在參考 ImageJ 程式底下其他 macros 的內容之後,發現很多 macros 的內容結構都很像。在打開作者的 MolWt.txt 檔之後,裡面可以看到這巨集的四個組成:
MolWt.txt 的內容
- Open MW File
- Select Reference Bands
- Calculate Regression Line
- Estimate Unknown MW
出於死馬當活馬醫的心情,我就將原始檔 MolWt 的四個部分,分別剪貼成新的 txt 檔案並重新命名,最後再一個個地安裝進 ImageJ。名稱最好就是那四個 macro names,然後分別安裝到 ImageJ——在我的環境中,依然是路徑 Plugins→Install…才有用。
而PTT 網友則是曾經碰到過安裝完並重開啟 ImageJ 之後,之前安裝過的就又不見了的情況;或是碰到過安裝了一個,待準備要安裝下一個的時候,前一個又不見了的情形;還有,原本可以用的快捷鍵,之後不曉得怎麼一回事就又不能使用的狀況。
- 使用 macro『Open MW File』功能,打開 marker 的純文字檔,它會自動形成一份 log 檔待用。作者強調過,在這個步驟進行以前,除了 ImageJ 主程式的視窗、圖檔視窗和分析的 plot 圖之外,最好不要有其他的視窗存在,否則會算不出回歸線,自然也算不出目標片段的大小了(未知片段上會顯示 NaN)。
References log - 使用點選工具 Point,依序在每個波峰的尖端點一下,出現圓點之後,以 macro 『Select Reference Bands』功能選取相應 marker 片段的數值。只能點一個波峰,選一個數值之後,再點下一個波峰,點選相應數值,一直到點選完畢。在點選下一片段之後,前一個圓點就會變成一條豎立的直線,表示數值標定完畢。
Point out the peaks 這一步,只能使用 single point,multipoint 無效,macro 只會認 multiport 所點選的最後一個點,以等著下指令。我不曉得有没有辦法修改 macro 檔案使得 multipoint 可以運作。我自己不懂怎麼寫 script,不過 ImageJ 官網上有教人怎麼寫巨集,有興趣的可以自行研究。 - 點選完畢之後,以 macro 『Calculate the Regression Line』計算出回歸線值。基本上,回歸線的計算是只要有兩個以上的點就可以了,但是電泳的結果,從起點開始計算泳動距離,要取自然對數以在平面的對數座標上畫直線;若只給兩、三個點,則回歸線的誤差值會太大,要想計算某未知泳動片段的正確距離(分子量或鹼基對)就比較難。所以,要是 marker 片段點得夠多夠精準,算出來的回歸線,其 corr. 係數會越接近 -1,則計算未知片段的大小,結果會越精確。
- 計算出了回歸線,就可以在未知片段的 plotted figure 上用 point tool 點一下未知片段的波峰,然後以 macro『Estimate Unknown MW』功能來算出未知片段的大小。
事實上,所有步驟一切嚴格按照操作說明來進行,應該就會没問題,像是按順序一步步來,不該先出現的視窗或操作,就不要先進行。這也是我 PTT 網友相互討論出來的結論,更是巨集作者在操作說明中強調過了的。如果 ImageJ 現有版本有問題,可以升級到最新的 1.49s 或是作者使用過的 1.34 版 (Windows)。
在說明書最後,巨集的作者也說了,可以直接在欲分析的電泳圖上點選 marker 並註記相應大小,不需要 plot 圖,就能計算相應的回歸線並求取未知片段的大小。但我没試,我認為自己看電泳圖標定,不會比在 plot 圖上標波峰來得準確。
網誌管理員已經移除這則留言。
回覆刪除