Я изо всех сил пытаюсь настроить подграфики круговой диаграммы с подходящим размером и интервалом. Если размер круговой диаграммы слишком мал, данные не видны, если расстояние между подграфиками не подходит, диаграмма будет переполнена. Таким образом, расположение подзаголовков представляет собой следующие 3 строки; 2 колонки. Пожалуйста, смотрите ниже фрагмент из набора данных:
violent_main=pd.DataFrame({'Counts': crimes[crimes['Class Main Cathegory'].notnull()==True].groupby(['Police District Number'])['Class Main Cathegory'].value_counts()}).reset_index()
violent_main
Также прикреплен экран печати набора данных:
Я использую следующий код для построения графика:
#PD_1D
label_PD_1D=violent_main[violent_main['Police District Number']=='1D']['Class Main Cathegory']
values_PD_1D=violent_main[violent_main['Police District Number']=='1D']['Counts']
#PD_2D
label_PD_2D=violent_main[violent_main['Police District Number']=='2D']['Class Main Cathegory']
values_PD_2D=violent_main[violent_main['Police District Number']=='2D']['Counts']
#PD_3D
label_PD_3D=violent_main[violent_main['Police District Number']=='3D']['Class Main Cathegory']
values_PD_3D=violent_main[violent_main['Police District Number']=='3D']['Counts']
#PD_4D
label_PD_4D=violent_main[violent_main['Police District Number']=='4D']['Class Main Cathegory']
values_PD_4D=violent_main[violent_main['Police District Number']=='4D']['Counts']
fig = {
"data": [
{
"values": values_PD_1D,
"labels": label_PD_1D,
"domain": {'x': [0.0, 0.35], 'y': [2.22, 2.53]},
"name": "PD_1D",
"hoverinfo":"label+percent+name",
"hole": .4,
"type": "pie"
},
{
"values": values_PD_2D,
"labels": label_PD_2D,
"text":"CO2",
"textposition":"inside",
"domain":{'x': [0.50, 0.85], 'y': [2.22, 2.53]},
"name": "PD_2D",
"hoverinfo":"label+percent+name",
"hole": .4,
"type": "pie"
},
{
"values": values_PD_3D,
"labels": label_PD_3D,
"text":"CO2",
"textposition":"inside",
'domain': {'x': [0.0, 0.35], 'y': [.9, 1.13]},
"name": "CO2 Emissions",
"hoverinfo":"label+percent+name",
"hole": .4,
"type": "pie"
}
],
"layout": {
"title":"Violent Crimes by main cathegory",
"annotations": [
{
"font": {
"size": 20
},
"showarrow": False,
"text": "PD_1D",
"x": 0.12,
"y": 0.5
},
{
"font": {
"size": 20
},
"showarrow": False,
"text": "PD_2D",
"x": 0.73,
"y": 0.5
},
{
"font": {
"size": 20
},
"showarrow": False,
"text": "PD_3D",
"x": 0.20,
"y": 0.25
}
]
}
}
iplot(fig, filename='donut')
В этом коде я пытаюсь манипулировать макетом, используя «домен»: {x: [], y: []) Однако я не могу получить желаемый макет. Так, например, участок № 3 меньше и выше участка 1 и участка 2. Я хотел бы, чтобы этот участок был того же размера, что и другие участки, но ниже. См. ниже график: сюжет
Я надеюсь, что смогу понять логику, чтобы построить круговые диаграммы: 3 строки: 2 столбца. пожалуйста, порекомендуйте