I'd expect it to be a fairly common problem when installing a lot of python packages that there would be dependency collisions like package A depending on a certain version of package C and package B depending on another version of package C as a result of which both A and B cannot coexist in a project.
In my case this happens with tensorflow requiring numpy 1.19.2 and matplotlib requiring numpy 1.23.0.
Are there known workarounds to this or do you just have to pick one of them?
I believe you can try installing an older matplotlib version, which will likely be compatible with the python version required by tensorflow.
That said, I recommend that you use Python's virtual environment (if you're not already using it). You will be able to install/test different libraries versions without messing up the ones on your system.