Fix scatter_matrix lacking ability to use grid parameter
- [ ] closes #50818
- [x] All [code checks passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#pre-commit).
- [x] Added an entry in the latest `doc/source/whatsnew/vX.X.X.rst` file if fixing a bug or adding a new feature.

As per #50818 the scatter_matrix function would not produce a scatter matrix with a grid if grid=True was passed. I found this to be a result of the act of setting all non-bottom/left corner subplots of the matrix to have their axes hidden. The matplotlib function 'grid()' would simply not work on subplots that had their axes hidden.

To get around this instead of hiding the x and y axes I found that turning off labels and tick numbers accomplishes the same goal of hiding unnecessary information while allowing grid lines to be shown when grid() is called. Heres what it looks like

<img width="1440" alt="Screenshot 2023-08-11 at 12 14 20 PM" src="https://github.com/pandas-dev/pandas/assets/100482381/b4e36b23-0cf7-4e10-ae1d-dddfae2dc8ae">

If its preferred to give grid lines to diagonals thats a fix I can make as well. I thought turning them off would be better as the tick numbers for the diagonal is incorrect, though thats unrelated to the grid lines. @mroeschke could you provide any assistance on next steps? I nor many people have much expertise on this part of the code base so I'm not sure if anyone is available to provide meaningful feedback on the fix Thanks for the PR here, but as mentioned, I don't think we have anyone on the core team right now to provide meaningful feedback here so closing for now. We can reopen if we have a matplotlib expert to review this PR