kayyshf's picture
Upload 4 files
00d1f6c verified
import streamlit as st
from github_analytics.singular_analysis_chat import predict_2vars
import plotly.graph_objs as go
def create_pie_chart(repo_data):
"""Creates an interactive pie chart showing the distribution of repository languages."""
if not repo_data:
return None
languages = {}
for repo in repo_data:
if repo.get("language"): # Check if language exists
languages[repo["language"]] = languages.get(repo["language"], 0) + 1
language_labels = list(languages.keys())
language_counts = list(languages.values())
if not language_labels:
st.write("No languages found in repositories.")
return None
# Create Plotly pie chart
fig = go.Figure(data=[go.Pie(labels=language_labels, values=language_counts)])
fig.update_layout(
title="Repository Language Distribution",
hoverlabel=dict(
bgcolor="white",
font_size=16,
font_family="Rockwell"
),
width=800,
height=600
)
response = predict_2vars(language_labels, language_counts, "language_labels", "language_counts")
return st.plotly_chart(fig), st.write(response)