Skip to contents

Returns two side-by-side scatter plots representing two selected metrics, using colour to map an HR attribute and size to represent number of employees. Returns a faceted scatter plot by default, with additional options to return a summary table.

Usage

create_period_scatter(
  data,
  hrvar = "Organization",
  metric_x = "Large_and_long_meeting_hours",
  metric_y = "Meeting_hours",
  before_start = min(as.Date(data$MetricDate, "%m/%d/%Y")),
  before_end,
  after_start = as.Date(before_end) + 1,
  after_end = max(as.Date(data$MetricDate, "%m/%d/%Y")),
  before_label = "Period 1",
  after_label = "Period 2",
  mingroup = 5,
  return = "plot"
)

Arguments

data

A Standard Person Query dataset in the form of a data frame.

hrvar

HR Variable by which to split metrics. Accepts a character vector, defaults to "Organization" but accepts any character vector, e.g. "LevelDesignation"

metric_x

Character string containing the name of the metric, e.g. "Collaboration_hours"

metric_y

Character string containing the name of the metric, e.g. "Collaboration_hours"

before_start

Start date of "before" time period in YYYY-MM-DD

before_end

End date of "before" time period in YYYY-MM-DD

after_start

Start date of "after" time period in YYYY-MM-DD

after_end

End date of "after" time period in YYYY-MM-DD

before_label

String to specify a label for the "before" period. Defaults to "Period 1".

after_label

String to specify a label for the "after" period. Defaults to "Period 2".

mingroup

Numeric value setting the privacy threshold / minimum group size. Defaults to 5.

return

Character vector specifying what to return, defaults to "plot". Valid inputs are "plot" and "table".

Value

Returns a 'ggplot' object showing two scatter plots side by side representing the two periods.

Details

This is a general purpose function that powers all the functions in the package that produce faceted scatter plots.

Examples

# Return plot
create_period_scatter(pq_data,
                      hrvar = "LevelDesignation",
                      before_start = "2022-05-01",
                      before_end = "2022-05-31",
                      after_start = "2022-06-01",
                      after_end = "2022-07-03")


# Return a summary table
create_period_scatter(pq_data, before_end = "2022-05-31", return = "table")
#> # A tibble: 8 × 5
#>   group               Large_and_long_meeting_hours Meeting_hours Period       n
#>   <chr>                                      <dbl>         <dbl> <chr>    <int>
#> 1 Finance                                     8.34          15.6 Period 1    27
#> 2 HR                                         10.5           17.8 Period 1    21
#> 3 Product                                     4.96          10.4 Period 1    21
#> 4 Sales and Marketing                        14.8           24.7 Period 1    31
#> 5 Finance                                     8.94          16.2 Period 2    27
#> 6 HR                                          8.84          16.5 Period 2    21
#> 7 Product                                     5.98          11.6 Period 2    21
#> 8 Sales and Marketing                        13.4           25.4 Period 2    31