gov-uk-dashboards 15.0.0__py3-none-any.whl → 15.0.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -210,12 +210,31 @@ class ChoroplethMap:
210
210
  },
211
211
  )
212
212
 
213
+ def _wrap_text(self, text, max_chars_per_line):
214
+ words = text.split()
215
+ lines = []
216
+ current_line = ""
217
+
218
+ for word in words:
219
+ if len(current_line) + len(word) + 1 > max_chars_per_line:
220
+ lines.append(current_line)
221
+ current_line = word
222
+ else:
223
+ if current_line:
224
+ current_line += " "
225
+ current_line += word
226
+
227
+ if current_line:
228
+ lines.append(current_line)
229
+
230
+ return "<br>".join(lines)
231
+
213
232
  def _get_color_bar(self):
214
233
  if self.discrete_map:
215
234
  return None
216
235
 
217
236
  return {
218
- "title": self.column_to_plot,
237
+ "title": self._wrap_text(self.legend_title_text, 10),
219
238
  "thickness": 20,
220
239
  "len": 0.8,
221
240
  "x": 0.9,
@@ -193,7 +193,6 @@ class TimeSeriesChart:
193
193
  # hoverinfo="skip",
194
194
  # )
195
195
  # )
196
-
197
196
  if self.verticle_line_x_value_and_name is not None:
198
197
 
199
198
  fig.add_vline(
@@ -203,7 +202,7 @@ class TimeSeriesChart:
203
202
  line_color="#b3b3b3",
204
203
  )
205
204
  fig.add_annotation(
206
- x=self.verticle_line_x_value_and_name,
205
+ x=self.verticle_line_x_value_and_name[0],
207
206
  yref="paper",
208
207
  y=0.9,
209
208
  text=self.verticle_line_x_value_and_name[1],
@@ -267,7 +266,6 @@ class TimeSeriesChart:
267
266
  hover_label (dict[str,str]): Properties for hoverlabel parameter.
268
267
  marker (dict[str,str]): Properties for marker parameter.
269
268
  """
270
-
271
269
  return go.Scatter(
272
270
  x=df[self.x_axis_column],
273
271
  y=df[self.y_axis_column],
@@ -316,6 +314,7 @@ class TimeSeriesChart:
316
314
  ][HOVER_TEXT_HEADERS]
317
315
  )
318
316
  # pylint: disable=duplicate-code
317
+
319
318
  return (
320
319
  f"{trace_name}<br>"
321
320
  f"{hover_text_headers[0]}"
@@ -332,7 +331,6 @@ class TimeSeriesChart:
332
331
  and trace_name
333
332
  in self.hover_data_for_traces_with_different_hover_for_last_point
334
333
  ):
335
-
336
334
  customdata = [
337
335
  (
338
336
  [df[col][i] for col in self.hover_data[trace_name][CUSTOM_DATA]]
@@ -368,16 +366,17 @@ class TimeSeriesChart:
368
366
  .dt.year()
369
367
  .alias(YEAR)
370
368
  )
371
-
369
+ date_list = df_with_year_column[self.x_axis_column].unique().to_list()
370
+ min_date_string = min(date_list)
371
+ max_date_string = max(date_list)
372
+ min_datetime = datetime.strptime(min_date_string, "%Y-%m-%d")
373
+ max_datetime = datetime.strptime(max_date_string, "%Y-%m-%d")
372
374
  year_list = df_with_year_column[YEAR].unique().to_list()
373
-
374
- tick_text = [min(year_list) - 1] + year_list + [max(year_list) + 1]
375
-
375
+ tick_text = list(range(min(year_list) - 1, max(year_list) + 2))
376
376
  tick_values = [date(year, 1, 1) for year in tick_text]
377
-
378
377
  range_x = [
379
- tick_values[0] + relativedelta(months=6),
380
- tick_values[-1] + relativedelta(months=6),
378
+ min_datetime - relativedelta(months=6),
379
+ max_datetime + relativedelta(months=6),
381
380
  ]
382
381
 
383
382
  elif self.xaxis_tick_text_format == XAxisFormat.MONTH_YEAR.value:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: gov_uk_dashboards
3
- Version: 15.0.0
3
+ Version: 15.0.2
4
4
  Summary: Provides access to functionality common to creating a data dashboard.
5
5
  Author: Department for Levelling Up, Housing and Communities
6
6
  Description-Content-Type: text/markdown
@@ -75,10 +75,10 @@ gov_uk_dashboards/components/helpers/plotting_helper_functions.py,sha256=ZyO0hYc
75
75
  gov_uk_dashboards/components/helpers/update_layout_bgcolor_margin.py,sha256=i7Nwp0CxFpkyQeR8KfOBVMBkzctG7hMpWI2OzgxB2jY,740
76
76
  gov_uk_dashboards/components/plotly/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
77
77
  gov_uk_dashboards/components/plotly/captioned_figure.py,sha256=T0sbtGTiJ79FXxVdPb__hqISuyTc3Dl11cKhgcuW-5U,2804
78
- gov_uk_dashboards/components/plotly/choropleth_map.py,sha256=kX44qgxAL9i3w0bT7N2274iBcH5RiyeWF_lVWV1hju0,9292
78
+ gov_uk_dashboards/components/plotly/choropleth_map.py,sha256=U9RmS3MZGloQAt9HoSYh3Xad205DDfZOjz91ZD_ydbI,9849
79
79
  gov_uk_dashboards/components/plotly/enums.py,sha256=0QnVyXwnBQRqP3p8YIgPsvGLPu-wClBj9F_722GDfYU,794
80
80
  gov_uk_dashboards/components/plotly/stacked_barchart.py,sha256=y2XOf96tMfy5ythPb5RzqW5qGc2sKU3W508UbWO2iC0,12175
81
- gov_uk_dashboards/components/plotly/time_series_chart.py,sha256=wqwKuWraywzUK7KvRCpG9qo87NCnMizedM8yq2EkBMU,17867
81
+ gov_uk_dashboards/components/plotly/time_series_chart.py,sha256=oOxGjCjoKclLc5o9qGc6vMtb1LXWZ2WbdZzQ31NLZ9E,18176
82
82
  gov_uk_dashboards/figures/__init__.py,sha256=_snQeNlM81nNKERl4gg9ScH2HYbtwaBjl8yQonccx34,712
83
83
  gov_uk_dashboards/figures/chart_data.py,sha256=fEsNkQFzXKIQ0h7aLBWq3J1qAxHbxvJeKU23JrVodVc,757
84
84
  gov_uk_dashboards/figures/line_chart.py,sha256=rEB51_z9cPl7BcT94iA6ZsZXzecnVCnGpQWW_9SNGUY,2813
@@ -99,8 +99,8 @@ gov_uk_dashboards/lib/dap/dap_deployment.py,sha256=ZXixeOAtRNjMsPdGKLwwLNamlo0mi
99
99
  gov_uk_dashboards/lib/dap/get_dataframe_from_cds.py,sha256=OiusRCgYnkBjK_GZgYLGzNrxOGizYt8CgThiWRCVKK0,3921
100
100
  gov_uk_dashboards/lib/datetime_functions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
101
101
  gov_uk_dashboards/lib/datetime_functions/datetime_functions.py,sha256=BQgr8I_vFNYwLi-fE4YC6jZ5PpbPea2rnD_2a_lw0YE,12209
102
- gov_uk_dashboards-15.0.0.dist-info/licenses/LICENSE,sha256=GDiD7Y2Gx7JucPV1JfVySJeah-qiSyBPdpJ6RHCEHTc,1126
103
- gov_uk_dashboards-15.0.0.dist-info/METADATA,sha256=aobvZ1ocYpZqhcH7bgJ472CKN0ShgS0Hn_z400-NTaQ,5917
104
- gov_uk_dashboards-15.0.0.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
105
- gov_uk_dashboards-15.0.0.dist-info/top_level.txt,sha256=gPaN1P3-H3Rgi2me6tt-fX_cxo19CZfA4PjlZPjGRpo,18
106
- gov_uk_dashboards-15.0.0.dist-info/RECORD,,
102
+ gov_uk_dashboards-15.0.2.dist-info/licenses/LICENSE,sha256=GDiD7Y2Gx7JucPV1JfVySJeah-qiSyBPdpJ6RHCEHTc,1126
103
+ gov_uk_dashboards-15.0.2.dist-info/METADATA,sha256=vnBnaJwv-t8MIGRQvARA2SNDOXHlgMQSqtTUEK77fdY,5917
104
+ gov_uk_dashboards-15.0.2.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
105
+ gov_uk_dashboards-15.0.2.dist-info/top_level.txt,sha256=gPaN1P3-H3Rgi2me6tt-fX_cxo19CZfA4PjlZPjGRpo,18
106
+ gov_uk_dashboards-15.0.2.dist-info/RECORD,,