7

I wanted to create a heatmap of a probability density matrix using plotly.

import numpy as np
from plotly.offline import download_plotlyjs, init_notebook_mode, plot
import plotly.graph_objs as go

probability_matrix = np.loadtxt("/path/to/file")
trace = go.Heatmap(z = probability_matrix)
data=[trace]
plot(data, filename='basic-heatmap')

This gives me an image like this:

basic-heatmap

I want to smoothen the color of the squares so that the transition between adjacent squares in the image are somewhat "smoother". I was wondering if there is a way of doing that, without manually resizing the matrix using interpolation.

Ahsan Tarique
  • 581
  • 1
  • 11
  • 22

1 Answers1

14

You can use the zsmooth argument which can take three values ('fast', 'best', or False). For example:

data = [go.Heatmap(z=[[1, 20, 30],
                      [20, 1, 60],
                      [30, 60, 1]],
                   zsmooth = 'best')]
iplot(data)

Will give you the following smooth heatmap:

enter image description here

byouness
  • 1,746
  • 2
  • 24
  • 41