Shading='flat / nearest / gouraud / phong(?)'

Hi there everyone. My name is Aldo and I am an undergrad college student. I am doing a presentation involving some python plot, and different kinds of available shadings.

Since I am fairly new to phython and absolutely new to the matplotlib library, I was wondering if someone could point out where to find the “flat / nearest / gouraud shading” implementation algorithm within the library.

I mean what changes code-side when I declare “shading = flat” in my plot.

Also, if there is any way to implement / simulate “Phong shading”.

I thank you guys in advance for your answers and wish you to keep up with the great work.