Just use pyplot.matshow() from matplotlib:
import matplotlib.pyplot as plt
plt.matshow(dataframe.corr())
plt.show()
If df.corr() method ignores non-numerical columns, use .select_dtypes(['number']) when defining the x and y labels to avoid an unwanted shift of the labels.
Code :
f = plt.figure(figsize=(19, 15))
plt.matshow(df.corr(), fignum=f.number)
plt.xticks(range(df.select_dtypes(['number']).shape[1]), df.select_dtypes(['number']).columns, fontsize=14, rotation=45)
plt.yticks(range(df.select_dtypes(['number']).shape[1]), df.select_dtypes(['number']).columns, fontsize=14)
cb = plt.colorbar()
cb.ax.tick_params(labelsize=14)
plt.title('Correlation Matrix', fontsize=16);
I hope this helps.