Note
Go to the end to download the full example code.
Sunburst Plots¶
Sunburst plots, also known as ring charts, can be generated using the fig_sunburst() function, which returns a Plotly Go Figure object.
The plot below was generated using a synthetic dataset of patient enrolment data organised by site and country.
The dataset is given below as a table (but can also be loaded from the docs/sources/plot-gallery/examples/csv/sunburst.csv file).
Site ID |
Country |
Patient Enrolment Count |
|---|---|---|
0 |
COL |
21 |
2 |
COL |
25 |
3 |
GBR |
199 |
5 |
CAN |
31 |
6 |
BRA |
156 |
7 |
BRA |
27 |
8 |
BRA |
8 |
9 |
FRA |
174 |
10 |
POL |
89 |
11 |
POL |
30 |
13 |
RWA |
121 |
14 |
KEN |
1 |
15 |
KEN |
15 |
16 |
KEN |
1 |
18 |
NLD |
102 |
Here are the Python steps you need to generate the plot using the fig_sunburst() function:
67 import pandas as pd
68 from isaricanalytics.visualisation import fig_sunburst
69
70 # Load the CSV
71 data = pd.read_csv("./csv/sunburst.csv")
72
73 # Create and display the figure
74 fig = fig_sunburst(
75 data,
76 title="Sunburst Plot of Synthetic Patient Enrolment Data Organised by Site and Country",
77 path=["Country", "Site"],
78 values="SubjectID",
79 )
80 fig.update_layout(autosize=True)
81 fig
Note
Any dataframe or CSV column names, or dictionary field labels, in the example above that are not specific to the dataset must be as given, otherwise the function may throw an exception or return an incorrect figure.
The figure height and width parameters can be set using the height
and width parameters, but it may be more convenient to let Plotly handle
this using the figure layout autosize
parameter. Refer to the fig_sunburst()
function docstring for more information.
Total running time of the script: (0 minutes 0.570 seconds)