Код: Выделить всё
def draw_heatmap(...):
vmin = np.nanmin(matrix) # Smallest value in the matrix (ignoring NaNs)
vmax = np.nanmax(matrix) # Largest value in the matrix
# Mask NaN values for coloring
masked_matrix = np.ma.masked_invalid(matrix)
# Define a colormap
cmap = plt.cm.RdBu_r # Red to Blue colormap
cmap.set_bad(color='gray') # Set NaN values to appear in gray
# Plot heatmap
fig, ax = plt.subplots(figsize=(10, 8))
heatmap = ax.imshow(masked_matrix, cmap=cmap, origin='upper', vmin=vmin, vmax=vmax)
....
plt.savefig(output_file, format='png', dpi=300, bbox_inches='tight')
- Диагонали в версии Jupyter были правильно установлены на 1 (красный), а в версии py скрипт, все диагонали были белыми.
- Jupyter создал PNG-файл размером 24 МБ, а скрипт py - только PNG-файл размером 4,2 МБ.
Подробнее здесь: https://stackoverflow.com/questions/791 ... ter-notebo