summaryrefslogtreecommitdiffstats
path: root/graph.py
diff options
context:
space:
mode:
Diffstat (limited to 'graph.py')
-rw-r--r--graph.py14
1 files changed, 11 insertions, 3 deletions
diff --git a/graph.py b/graph.py
index 14bf31e..17c84a4 100644
--- a/graph.py
+++ b/graph.py
@@ -28,18 +28,21 @@ def plot_subscriber_count_over_time(server, table_name, gtitle="Subscriber Count
for group_name in group_names:
channels_in_group = sorted(df[df['group_name'] == group_name]['name'].unique())
- group_title_added = False
+ group_title_added = False # Flag to add group title only once
for channel in channels_in_group:
group = df[(df['group_name'] == group_name) & (df['name'] == channel)]
if len(exclude_channels) != 0 and group['channel_id'].iloc[0] in exclude_channels:
continue
+
color = member_color_map.get(channel, '#' + ''.join(random.choices('0123456789ABCDEF', k=6)))
+
if not group_title_added:
legendgrouptitle_text = group_name
group_title_added = True
else:
legendgrouptitle_text = None
+
fig.add_trace(go.Scattergl(
x=group["timestamp"],
y=group["subscriber_count"],
@@ -48,7 +51,8 @@ def plot_subscriber_count_over_time(server, table_name, gtitle="Subscriber Count
showlegend=True,
line=dict(color=color),
legendgroup=group_name,
- legendgrouptitle_text=legendgrouptitle_text
+ legendgrouptitle_text=legendgrouptitle_text,
+ legendrank=group_names.index(group_name),
))
fig.update_layout(
@@ -61,7 +65,11 @@ def plot_subscriber_count_over_time(server, table_name, gtitle="Subscriber Count
},
xaxis_title="Date",
yaxis_title="Subscribers",
- legend=dict(font=dict(size=16), title=dict(text="Channels")),
+ legend=dict(
+ font=dict(size=16),
+ title=dict(text="Channels"),
+ groupclick='toggleitem'
+ ),
height=950,
)
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage