what-a-git-year / plotly_im.py
as-cle-bert's picture
Update plotly_im.py
1869b55 verified
import pandas as pd
import plotly.express as px
def plot_to_html(df: pd.DataFrame, x: str, y: str, labels: dict, color_based_on: str, y_label: str = "", x_label: str = "", title: str = "", filepath: str = "plot") -> str:
# Create a bar plot with a greyscale color theme
fig = px.bar(
df,
x=x,
y=y,
title=title,
labels=labels,
color=color_based_on,
color_continuous_scale=px.colors.sequential.Jet
)
# Update layout for appearance
fig.update_layout(
xaxis_title=x_label,
yaxis_title=y_label, # Adding the y_label explicitly
template="plotly_white", # Light background for greyscale contrast
title_x=0.5, # Center the title
)
fig.write_image(f"{filepath}.png")
return f"{filepath}.png"
def plot_pie_chart(df: pd.DataFrame, names: str, values: str, labels: dict, title: str = "", filepath: str = "plot") -> str:
# Create a pie chart
fig = px.pie(
df,
names=names,
values=values,
title=title,
labels=labels,
color_discrete_sequence=px.colors.sequential.Jet
)
# Update layout for appearance
fig.update_layout(
template="plotly_white", # Light background for greyscale contrast
title_x=0.5 # Center the title
)
fig.write_image(f"{filepath}.png")
return f"{filepath}.png"