Have you ever seen dyed agates and wondered how they get such brilliant colors? The process is more simple than you might think. A company buys banded agates in bulk and soaks the slabs in certain chemicals for a certain amount of time (in a fume hood of course). Heat treating may also be required.
But how do they preserve the white stripes that make the agates look like agates? This is simply because some bands are porous and will absorb the dye, but the denser layers and the quartz crystals will remain white because they are too dense to absorb the dye.
(Note: To discourage you from trying this at home, I’m not going to specify the concentrations.)
Red: Iron (II) nitrate for several weeks folllowed by heating to 300° C
Green: Potassium chromate followed by ammonium carbonate plus heating to 440° C
Blue: Potassium ferrocyanide followed by ferrous sulfate
Black: soak in sugar for 3 weeks followed by sulfuric acid for 3 weeks