Pro Color_On_Gray, image_1, image_2 ; Get the data sets if needed. IF N_Params() EQ 0 THEN BEGIN image_1 = Loaddata(7) image_2 = Loaddata(5) ENDIF ; Undecomposed color. IF (!D.Flags AND 256) NE 0 THEN Device, Decomposed=0 ; Size the second image to fit the first. s = Size(image_1, /Dimensions) image_2 = Congrid(image_2, s[0], s[1], /Interp) ; Load the color tables. Gray-scale and red-temperature. ncolors = !D.Table_Size halfcolors = Byte(ncolors / 2) LoadCT, 0, NColors=halfcolors LoadCT, 3, NColors=halfcolors, Bottom=halfcolors ; Scale the data. Image_1 data uses gray-scale. image_1 = Bytscl(image_1, Top=halfcolors-1) image_2 = Bytscl(image_2, Top=halfcolors-1) + halfcolors ; Create a vector for pixelation. x = Findgen(s[0]/2) * 2 ; Pixelate the image. image = BytArr(s[0], s[1]) image[x, *] = image_1[x, *] image[x+1, *] = image_2[x+1, *] image[*, x] = Shift(image[*, x], 1) Window, XSize=s[0], YSize=s[1], /Free TV, image END