Application Note
Scripting in GenePix Pro
Shawn Handran, Ph.D., Jack Y. Zhai, Ph.D., Sean Carriedo, Ph.D., and Damian Verdnik, Ph.D. Axon Instruments, Inc. 3280 Whipple Road, Union City, CA 94587
Last Update: Feb. 21, 2001
A. Introduction to Scripts
Scripts are a powerful feature of GenePix Pro that provide additional means of analyzing or displaying data and even automating acquisition or analysis functions. Scripts are written in hypertext mark-up language (HTML), Visual Basic (VBScript) or Javascript. GenePix Pro includes several ready-to-use scripts that can be found under the Report Tab and are displayed in an embedded Internet Explorer browser page. Under the Help Button, you will also find extensive information about scripting and an excellent tutorial for writing your own scripts allowing GenePix Pro to perform a wide variety of custom-made operations. This Application Note briefly describes some of the scripts included in GenePix Pro and assumes that you are using the latest version of GenePix (press the Hardware Diagnostic button to update to the latest version of GenePix Pro).
There must be data in the Results Tab, or an open GenePix Results file (gpr) for certain scripts to function (e.g., those that analyze data). This requirement is not necessary for scripts that perform automated acquisition tasks.
B. Description of Analysis Report Scripts
1. Array Quality Control
This script utilizes a number of user-defined parameters to generate a comprehensive statistical analysis comprised of tables, graphs and a histogram in order to determine if the present microarray satisfies quality control criteria designated by the User. It is recommended that prior to running this script that the User identify and flag “Bad” features either manually or by running the Feature Quality Control script.
The threshold limits designated by the User to indicate a good microarray include:
- The minimum level of Signal-to-Background ratio.
- The maximum allowable Background intensity level.
- The minimum level of Signal-to-Noise ratio.
- The number of Features with saturated pixels exceeding a defined percentage.
- The maximum percentage of Features flagged as “Not Found”.
- The maximum percentage of Features flagged as “Bad”.
The first table in the report provides summary information about the microarray, and the second table indicates if the values for wavelengths 1 and 2 “Passed” or “Failed” the threshold limits determined by the User. The first scatter plot shows the Mean Intensities of wavelength 2 versus wavelength 1, which displays the spread of the data at a glance and indicates the number of Features that fall on or near the diagonal. The outlying features represent over- or underexpressing genes. The second scatter plot displays the Log Ratio versus the Sum of Medians.
The Log Ratio indicates the fold-change in expression, and the Sum of Medians reports the total signal in both channels. The plot therefore provides a visual means of determining if the Features with the highest changes in expression also have substantial signal. Features with low signal values can have spuriously high or low ratio values and should be interpreted with caution.
The next two graphs plot the Ratio of Medians against the position of each Feature along either the X-axis or Y-axis, which provides a visual means of determining systematic quality control problems with the slide. This could include errors in spot printing, hybridization or other issues related to experimental protocol.
Additionally, the Quality Control report displays a histogram of the Log Ratio values showing the frequency distribution of the fold-expression changes of all features in the present microarray data set. The majority of features should be centered at a Log Ratio value of zero (indicating no change in expression). If the mode of the histogram is not centered at zero, there may be a systematic error in the present microarray, such as imbalanced PMT settings or a failed hybridization.
2. Feature Quality Control
This script automatically flags Features as “bad” when a userdetermined percentage of pixels in the Feature are below the fluorescence intensity of the median background value for that Feature. The default setting of the script is 55%, meaning that the script will flag a Feature as “bad” if 55% of the pixels in the Feature are not brighter than the Feature’s median background intensity. A lower value would be less stringent, and a higher value would be more stringent.
3. Image Map
This script generates a new image by combining the Ratio image of the fluorophore images (located under the Image Tab), and the accompanying array data (that must be open in the Results Tab). When the user places the mouse cursor over a Feature in the new Report image, it generates a ToolTips pop-up window displaying key Feature information including the location of the Feature (in terms of Block, Row and Column coordinates), the name and ID of the Feature, the Ratio of Medians and the Regression Ratio of the Feature, and Signal to Noise and Signal to Background ratio values for the CY3 and CY5 channels. Clicking on a Feature activates a hyperlink to the current web address (designated in Analysis tab under the Options button) so that the ID of the Feature is submitted to the selected web database. Additionally, the Report image can be saved as an HTML file using the “Export” button, so that the user can examine an array image and the Feature properties offline using a web browser or even post the image on the internet or the laboratory’s intranet.
4. Interesting Results
This script employs User-selected criteria to identify printed substances with activity changes that are potentially significant. The analysis is based on searching for changes in ratio values above or below a certain level, and only selecting those Features where all three ratio values (Ratio of Medians, Median of Ratios and Regression Ratio) fall within a certain percentage of one another. Features that meet these User-defined criteria are then listed in a table that is color-coded to facilitate visualization. Thus, features with brighter red signal, indicating increased activity, are color-coded with a gradient of red and are listed in descending order with the highest ratios having a brighter shade of red and the lower ratios with a darker shade. Conversely, those features with brighter green signal indicating diminished activity are color coded with a gradient of green and listed in descending order with the highest level of change having the brightest shade of green
The main purpose of the Interesting Results script is to identify features with changes that merit further study. The subset of results generated by the Interesting Results script can therefore be further examined for additional analysis.
5. Normalize Data
This script examines data that has been filtered through User-defined parameters and generates a report in which the data has been normalized, so that the user can more easily compare data from across microarrays. The report constructs a table with column sorting capability and clicking on the ID or Name of a gene activates a hyperlink to the current web address so that the ID of the Feature is submitted to the selected web database. The report also allows export of the table as a tab-delimited text file that can be easily imported into a database program such as Microsoft Excel.
6. Signal-to-Noise
Simply generating microarray images does not guarantee that the data will be of a quality worth analyzing. The characteristics of the microarray background can greatly impact the ability to detect and quantify arrayed spots. High background levels can obscure the signal from low-expressing genes, making it difficult to detect modest changes in expression.
In addition, background is rarely a uniform field. These fluctuations in signal are called “noise”. High background noise can impede precise quantitation. Regardless of the origin of the noise, it can typically be quantified by calculating the standard deviation of the background pixel values. GenePix Pro computes the signal to noise ratio (SNR) as:
SNR = (Signal - Background) / (Standard Deviation of Background)
This calculation is commonly used in many signal-processing disciplines, including radio, electronics, and imaging. The SNR indicates the confidence with which a signal can be detected and quantified above the background noise.
By displaying a statistical analysis of the Signal-To-Noise characteristics of the microarray, the Signal-To-Noise Report script provides an objective measure of the overall quality of the microarray image and allows the User to determine if meaningful data can be extracted from the microarray.
C. Hardware Diagnostic and Example Report Scripts
The Hardware Diagnostic scripts are largely self-explanatory. The Example scripts have been provided to further exemplify the power and potential of scripts in facilitating microarray data analysis. These scripts should provide useful starting points for generating custom scripts that will more closely satisfy the needs of the User’s research.
D. Customizing The Reports Tab
A major reason why the GenePix Pro’s scripting capabilities are so powerful is the ease with which the User can learn to generate custom scripts that automate the data acquisition and analysis process. To activate custom-made scripts, click on the “Open” button in the Reports tab and specify the location of the script (the default location is the ‘Params’ folder in the GenePix3.0 Folder). A convenient method of executing User-written scripts is to modify the Reports Tab “home page.” Since GenePix Pro executes scripts on the Report Tab through an embedded Internet Explorer browser page, this page can be easily customized by modifying the HTML code. Quit the GenePix application, go to the ‘Params’ folder and locate the “default.htm” file. Make a backup copy of this file and then open it using the NotePad application included with the Windows operating system (Microsoft Word is not recommended since the default saving format (*.doc) has formatting extras which are not HTML-friendly). Insert the following HTML code (which has been “copy” and “pasted” directly from the ‘Example Reports’ HTML code) directly above the last three lines in the file, so that the last half of the file looks like this:
<tr class="title">
<td>
<p class="heavy">The Title for My Script Report Section
</td>
</tr>
<tr>
<td>
<ol style="font-family:Arial; font-size:10pt">
<li><a href="Filename_for_Script1.htm">Title of Script #1</a>: Description of Script1.
<li><a href="Filename_for_Script2.htm">Title of Script #2</a>: Description of Script2.
<li><a href="Filename_for_Script3.htm">Title of Script #3</a>: Description of Script3.
</ol>
</td>
</tr>
</table>
</body>
</html>
Customize the “BOLD” text to fit the application. Save the file and launch GenePix Pro. In the Reports Tab the customized script will now appear.
E. Additional Resources
We hope this application note, along with the tutorial on scripting, has provided you with practical and useful information about scripting in GenePix Pro. We also recommend joining the axongenomics discussion group at http://groups.yahoo.com/group/axongenomics, where a number of GenePix users subscribe and post specific questions and answers regarding script use and development. The axongenomics server also contains a number of custom-made GenePix Pro scripts that are freely available for distribution.