color changes the color of an object or an atom selection.
color color-name color color-name, object-name color color-name, (selection)
cmd.color( string color, string selection )
Using RGB for Color
If you prefer RGB to color any object
set_color newcolor, [r,g,b] color newcolor
List of Color Values
Color all carbons yellow
color yellow, (name C*)
set_color khaki, [195,176,145] color khaki
Color by Spectrum Example
Color by spectrum is in the GUI menu but did you realize that the spectrum is not limited to a simple rainbow?
spectrum count, x, object_name
x can can be anyone of the following: blue_green, green_white_magenta, red_cyan, blue_magenta, green_white_red, red_green, blue_red, green_white_yellow, red_white_blue, blue_white_green, green_yellow, red_white_cyan, blue_white_magenta, green_yellow_red, red_white_green, blue_white_red, magenta_blue, red_white_yellow, blue_white_yellow, magenta_cyan, red_yellow, blue_yellow, magenta_green, red_yellow_green, cbmr, magenta_white_blue, rmbc, cyan_magenta, magenta_white_cyan, yellow_blue, cyan_red, magenta_white_green, yellow_cyan, cyan_white_magenta, magenta_white_yellow, yellow_cyan_white, cyan_white_red, magenta_yellow, yellow_green, cyan_white_yellow, rainbow, yellow_magenta, cyan_yellow, rainbow2, yellow_red, gcbmry, rainbow2_rev, yellow_white_blue, green_blue, rainbow_cycle, yellow_white_green, green_magenta, rainbow_cycle_rev, yellow_white_magenta, green_red, rainbow_rev, yellow_white_red, green_white_blue, red_blue, yrmbcg
The command to color a molecule by B-Factors (B Factors) is:
where SEL is a valid selection, for example, "protA and n. CA", for protein A's alpha carbons.
Reassigning B-Factors and Coloring
It is commonplace to replace the B-Factor column of a protein with some other biochemical property at that residue, observed from some calculation or experiment. PyMOL can easily reassign the B-Factors and color them, too. The following example will load a protein, set ALL it's B Factors to "0", read in a list of properties for each alpha carbon in the proteins, assign those new values as the B-Factor values and color by the new values. This example is possible because commands PyMOL does not recognize are passed to the Python interpreter --- a very powerful tool.
# load the protein cmd.load("protA.pdb") # open the file of new values (just 1 column of numbers, one for each alpha carbon) inFile = open("newBFactors", 'r') # create the global, stored array stored.newB =  # read the new B factors from file for line in inFile.readlines(): stored.newB.append( float(line) ) # close the input file inFile.close() # clear out the old B Factors alter protA, b=0.0 # update the B Factors with new properties alter protA and n. CA, b=stored.newB.pop(0) # color the protein based on the new B Factors of the alpha carbons cmd.spectrum("b", "protA and n. CA")
If you want to save the file with the new B Factor values for each alpha carbon,
or similar is all you need.