colebod209
colebod209

Reputation: 127

Plotly Treemap doesn't work with go.Treemap, but does with plotly.express?

I'm trying to plot a Treemap using go.Treemap, no errors are returned but the figure doesn't show.

The same data works fine using px.treemap.

Where am I going wrong?

import plotly.graph_objects as go
import plotly.express as px
import pandas as pd

data = {'Name': ['a', 'b', 'c', 'd'], 'Number': [3, 2, 1, 0], }
df = pd.DataFrame.from_dict(data)

fig1 = go.Figure(go.Treemap(labels=df['Name'], values=df['Number']))
fig1.show()

fig2 = go.Figure(px.treemap(df, path=['Name'], values='Number'))
fig2.show()

Upvotes: 2

Views: 2151

Answers (1)

Pascalco
Pascalco

Reputation: 2826

go.Treemap() requires the parameter parents. This parameter defines the parent sector for each sector of the tree map. If you don't want a hierarchy just use a list of empty strings.

import plotly.graph_objects as go
import pandas as pd

data = {'Name': ['a', 'b', 'c', 'd'], 'Number': [3, 2, 1, 0], }
df = pd.DataFrame.from_dict(data)

parents = ['']*len(df['Name'])

fig1 = go.Figure(go.Treemap(labels=df['Name'], values=df['Number'], parents=parents))
fig1.show()

Upvotes: 3

Related Questions