@@ -82,26 +82,49 @@ non_smoker_mean = mean_values_df[mean_values_df.smoker == "No"].sort_values(
8282smoker = df[df.smoker == " Yes" ].sort_values(by = " tip" , ascending = False )
8383non_smoker = df[df.smoker == " No" ].sort_values(by = " tip" , ascending = False )
8484
85- fig = go.Figure()
85+ fig = go.Figure(
86+ layout = dict (
87+ xaxis = dict (categoryorder = " category descending" ),
88+ yaxis = dict (range = [0 , 7 ]),
89+ scattermode = " group" ,
90+ legend = dict (groupclick = " toggleitem" ),
91+ )
92+ )
8693
8794fig.add_trace(
8895 go.Bar(
8996 x = smoker_mean.sex,
9097 y = smoker_mean.tip,
91- name = " Average (Smoker) " ,
98+ name = " Average" ,
9299 marker_color = " IndianRed" ,
93100 offsetgroup = " smoker" ,
101+ legendgroup = " smoker" ,
102+ legendgrouptitle_text = " Smoker" ,
94103 )
95104)
96105
97106
107+ fig.add_trace(
108+ go.Scatter(
109+ x = smoker.sex,
110+ y = smoker.tip,
111+ mode = " markers" ,
112+ name = " Individual tips" ,
113+ marker = dict (color = " LightSlateGrey" , size = 5 ),
114+ offsetgroup = " smoker" ,
115+ legendgroup = " smoker" ,
116+ )
117+ )
118+
98119fig.add_trace(
99120 go.Bar(
100121 x = non_smoker_mean.sex,
101122 y = non_smoker_mean.tip,
102- name = " Average (Non-Smoker) " ,
123+ name = " Average" ,
103124 marker_color = " LightSalmon" ,
104125 offsetgroup = " non-smoker" ,
126+ legendgroup = " non-smoker" ,
127+ legendgrouptitle_text = " Non-Smoker" ,
105128 )
106129)
107130
@@ -111,27 +134,14 @@ fig.add_trace(
111134 x = non_smoker.sex,
112135 y = non_smoker.tip,
113136 mode = " markers" ,
114- name = " Individual tips (Non-Smoker) " ,
137+ name = " Individual tips" ,
115138 marker = dict (color = " LightSteelBlue" , size = 5 ),
116139 offsetgroup = " non-smoker" ,
140+ legendgroup = " non-smoker" ,
117141 )
118142)
119143
120- fig.add_trace(
121- go.Scatter(
122- x = smoker.sex,
123- y = smoker.tip,
124- mode = " markers" ,
125- name = " Individual tips (Smoker)" ,
126- marker = dict (color = " LightSlateGrey" , size = 5 ),
127- offsetgroup = " smoker" ,
128- )
129- )
130-
131- fig.update_layout(scattermode = " group" )
132-
133144fig.show()
134-
135145```
136146
137147#### Line Chart and a Bar Chart
0 commit comments