Another alternative is to use the heatmap function in seaborn to plot the covariance. This example uses the 'mpg' data set from seaborn.
import seaborn as sns
%matplotlib inline
# load the Auto dataset
auto_df = sns.load_dataset('mpg')
# calculate the correlation matrix on the numeric columns
corr = auto_df.select_dtypes('number').corr()
# plot the heatmap
sns.heatmap(corr)

If you wanted to be even more fancy, you can use Pandas Style, for example:
cmap = sns.diverging_palette(5, 250, as_cmap=True)
def magnify():
return [dict(selector="th",
props=[("font-size", "7pt")]),
dict(selector="td",
props=[('padding', "0em 0em")]),
dict(selector="th:hover",
props=[("font-size", "12pt")]),
dict(selector="tr:hover td:hover",
props=[('max-width', '200px'),
('font-size', '12pt')])
]
corr.style.background_gradient(cmap, axis=1)\
.format(precision=3)\
.set_properties(**{'max-width': '80px', 'font-size': '10pt'})\
.set_caption("Hover to magify")\
.set_table_styles(magnify())

Another alternative is to use the heatmap function in seaborn to plot the covariance. This example uses the 'mpg' data set from seaborn.
import seaborn as sns
%matplotlib inline
# load the Auto dataset
auto_df = sns.load_dataset('mpg')
# calculate the correlation matrix on the numeric columns
corr = auto_df.select_dtypes('number').corr()
# plot the heatmap
sns.heatmap(corr)

If you wanted to be even more fancy, you can use Pandas Style, for example:
cmap = sns.diverging_palette(5, 250, as_cmap=True)
def magnify():
return [dict(selector="th",
props=[("font-size", "7pt")]),
dict(selector="td",
props=[('padding', "0em 0em")]),
dict(selector="th:hover",
props=[("font-size", "12pt")]),
dict(selector="tr:hover td:hover",
props=[('max-width', '200px'),
('font-size', '12pt')])
]
corr.style.background_gradient(cmap, axis=1)\
.format(precision=3)\
.set_properties(**{'max-width': '80px', 'font-size': '10pt'})\
.set_caption("Hover to magify")\
.set_table_styles(magnify())

How about this one?
import seaborn as sb
corr = df.corr()
sb.heatmap(corr, cmap="Blues", annot=True)

Each square shows the correlation between the variables on each axis. Correlation ranges from -1 to +1. Values closer to zero means there is no linear trend between the two variables. The close to 1 the correlation is the more positively correlated they are; that is as one increases so does the other and the closer to 1 the stronger this relationship is. A correlation closer to -1 is similar, but instead of both increasing one variable will decrease as the other increases. The diagonals are all 1/dark green because those squares are correlating each variable to itself (so it's a perfect correlation). For the rest the larger the number and darker the color the higher the correlation between the two variables. The plot is also symmetrical about the diagonal since the same two variables are being paired together in those squares.
A heat map is an eye-catcher, nothing more. It gives extreme colors to extreme values so they are easily visible to the naked eye. Apart from that, it's just a matrix of numbers, no special interpretation required.