For water, see MC-201151.
The colour used for grass blocks on maps is constant and does not at all change even when crossing into other biomes. Vexingly this color appears to be the same as the alpha grass, meaning that the color maps use for grass is well over a decade out of date.
Foliage (trees, etc.) is affected similarly, and is also just as outdated.
This bug is not present at all in Bedrock Edition, and as such maps respect biomes. The following is an example with savanna, plains and forest biomes visible:
[media]Linked issues
is duplicated by 4
relates to 11
Attachments
Comments 16
Note that this bug does not exist on Bedrock Edition, and as such Bedrock Edition can be used as a model for the behaviour expected on Java Edition:
[media]
This may be intentional, as maps were added far after the old grass color phased out. The feature may be intentionally 'Bedrock Exclusive'.
This issue can be fixed easily, I did it once for a MC mod myself, don't know why developers are not interested in this. It adds much value to the game if the different biomes also show up differently on a map. Please Mojang? 🙂