This is based on my previous post to find the group ID by group name.
import matplotlib.pyplot as plt import matplotlib.dates as mdates from datetime import datetime import gitlab def plot_cumulative_members(members): # Convert date strings to datetime objects and sort dates = sorted([datetime.strptime(member["access_granted_date"], '%Y-%m-%dT%H:%M:%S.%fZ') for member in members]) # Calculate cumulative count cumulative_count = range(1, len(dates) + 1) # Plotting plt.figure(figsize=(10, 6)) plt.plot(dates, cumulative_count, marker='o') plt.title('Cumulative Number of Users in GitLab Group Over Time') plt.xlabel('Date') plt.ylabel('Cumulative Number of Users') plt.grid(True) plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m-%d')) plt.gca().xaxis.set_major_locator(mdates.YearLocator()) plt.gcf().autofmt_xdate() # Rotation plt.show() group_id = get_gitlab_group_id("Protectors of the Footprint Realm", 'glpat-...') members = get_group_members(group_id, 'glpat-...') with plt.xkcd(): plot_cumulative_members(members)