egisinsight / analyzer.py
wxy01giser's picture
Update analyzer.py
eb0c70a verified
# analyzer.py
from feedback_analyzer import generate_sankey_df, DOMAIN_VOCAB
from sankey_plot import plot_sankey_from_df
def analyze_teacher_dashboard(excel_path: str) -> str:
"""
输入:融合后的 Excel 路径
输出:桑基图 base64 字符串(可直接嵌入 HTML)
全内存流,零中间文件,零冗余返回
"""
# print(f"执行analyze_teacher_dashboard函数!")
# 1. 内存生成停用词 + 桑基数据(自动缓存)
sankey_df = generate_sankey_df(
file_path=excel_path,
text_columns=["s1", "s2", "s3", "s4"],
domain_words=DOMAIN_VOCAB,
top_n=30
)
# print(f"{sankey_df}生成成功!")
# 2. 内存绘图 → base64
sankey_fig, b64 = plot_sankey_from_df(sankey_df, title="GIS实践教学改革方向捕捉")
# print(f"{b64}生成!")
# 3. 只返回最终结果
return sankey_fig, b64
if __name__ == '__main__':
sankey_b64, b64 = analyze_teacher_dashboard(excel_path = "E:\\data\\20250621Edu\\ex02.xlsx")
print()