|This code has been put under version control in the project Pymol-script-repo|
Certain colors are indistinguishable to people with the various forms of color blindness, and therefore are better not used in figures intended for public viewing.
This script generates a palette of named colors for PyMOL that are unambiguous both to colorblind and non-colorblind individuals.
The colors listed here are defined according to recommendations found at J*FLY. This website is a good reference to consult when making all kinds of figures, not just those made using PyMOL.
These are the 0-255 RGB values from the J*FLY page that are used in the script, with the defined color names and alternate names.
|cb_sky_blue||86||180||233||cb_skyblue, cb_light_blue, cb_lightblue|
|cb_vermillion||213||94||0||cb_red, cb_red_orange, cb_redorange|
|cb_reddish_purple||204||121||167||cb_rose, cb_violet, cb_magenta|
After importing the module,
import colorblindfriendly as cbf
call the set_colors() function to add the colors to PyMOL's color palette. Then, use these color names just like any other named color, using the
# Add the new colors cbf.set_colors() color myObject, cb_red
The colors can also be made to replace the built-in colors (i.e. they are created both with and without the "cb_" prefix.). Do this by passing the replace keyword argument.
# Replace built-in colors with cbf ones cbf.set_colors(replace=True) color myOtherObject, yellow # actually cb_yellow
One can also add an entry to the color menu in the right-side OpenGL GUI. So clicking on [C], there will now be a cb_colors menu item, which expands to give all the color blind-friendly colors, except black, which is available in the grays menu.
# Add a cb_colors menu item to the OpenGL GUI ([C] menu in the right panel) # this also adds the colors cbf.add_menu()
The cb_colors GUI menu (generated by the add_menu() function) requires PyMOL 1.6.0 and later.