I'm working with data frames that have underscores as spaces in the column names. As I understand it, this is good practice, so I don't want to rename the columns with spaces.

When plotting a correlation of the various columns with each other, the column names are spelled out with the underscore in the plot. I'd like to be able to have a cleaner reading visual that uses spaces instead.

Is there a way to modify the names that are displayed within plots such that I can replace all underscores with spaces and/or rename the labels displayed in these charts to be something different/more clear than the actual column names? Using both matplotlib and seaborn for my plots at the moment.

**Edit:**
To add some more detail as to the source of why I'm doing this - I am building this data frame from an SQL query. The SQL database has underscores in the column names, so they get inherited here. One useful answer below is to rename the resulting data frame to replace the underscores with spaces. Another I just thought of is to import the columns as more readable names when doing the query. This also allows me to change the columns to be even more legible if I want by adding detail.

`SELECT table.column_name AS [Column Name]`

But this leaves another question I have - why is it important to not have spaces in column names in an SQL database? In theory I could just make it so the database has the spaces I want built in.