My approach to natural dyeing is one part science and one part magic. I definitely embrace the mystery and also appreciate the research. I'm learning so much through trial and error in my #30localdyeplants project. One pattern I have noticed is that some plants, usually pink or purple in color, will make a purple dye bath that will turn green on fiber. This has happened three times now and I'm finally starting to understand why thanks to this amazing book The Art and Science of Natural Dyes by Joy Boutrup and Catharine Ellis. I am going to attempt to share what I have learned while also urging you to get the book and read about it for yourself.
Plants are not themselves dyes but some of them contain dyes. The different dye compounds that plants contain determine the color they will produce. There are many other factors including pH, the mordant used, the process etc. Not all color producing plants are considered dye plants. Some are thought of as creating a temporary stain rather than an actual dye. And others are what is referred to as "fugitive" meaning that they will fade when exposed to light or washing. I am currently testing my dyes for their longevity and will share the results.
That is a very brief summary all to say that I think what happened with my pink plant, purple dye, green fabric is that they were pre mordanted and then added to the dye bath. The tannins in the dyes reacted with the iron mordanted pieces to create a gray color. Also there are likely flavonoids present which reacted with the aluminum mordant to create a greenish color.
Here are some photos to illustrate.