Kung-Hsun commited on
Commit
3e95daa
·
verified ·
1 Parent(s): 2c2395e

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +6 -4
app.py CHANGED
@@ -232,19 +232,21 @@ with gr.Blocks(title="Cheminformatics Platform") as demo:
232
  cl_method = gr.Radio(['KMeans','DBSCAN'], label="分群方法", value="KMeans")
233
  nclus = gr.Slider(2, 8, 3, 1, label="KMeans分群數")
234
  dr_img = gr.Image(label="降維/分群視覺化")
 
235
  rep_imgs = gr.Image(label="群代表分子圖(每群1個)")
236
-
237
  def dimred_and_cluster(file, fp, dr, cl, nclu):
238
  df = load_table(file)
239
  df = calc_features(df, [fp], [], None)
240
  pc = apply_dim_red(df, fp, dr)
241
  labels = KMeans(n_clusters=int(nclu), random_state=42).fit_predict(pc) if cl == 'KMeans' else DBSCAN(eps=3, min_samples=2).fit_predict(pc)
242
  plotimg = plot_scatter(pc, labels, f"{dr}-{cl}")
243
- exp = explain_dimred(pc, labels, dr, cl)
 
244
  reps = cluster_reps(df, labels, fp)
245
  rep_img = batch_mol_imgs(reps)
246
- return plotimg, exp, rep_img
247
-
248
  gr.Button("降維+分群分析", variant="primary").click(
249
  dimred_and_cluster, [file4, use_fp, dr_method, cl_method, nclus], [dr_img, dr_desc, rep_imgs]
250
  )
 
232
  cl_method = gr.Radio(['KMeans','DBSCAN'], label="分群方法", value="KMeans")
233
  nclus = gr.Slider(2, 8, 3, 1, label="KMeans分群數")
234
  dr_img = gr.Image(label="降維/分群視覺化")
235
+ dr_desc = gr.Markdown(label="圖像說明") # <======= 新增這一行
236
  rep_imgs = gr.Image(label="群代表分子圖(每群1個)")
237
+
238
  def dimred_and_cluster(file, fp, dr, cl, nclu):
239
  df = load_table(file)
240
  df = calc_features(df, [fp], [], None)
241
  pc = apply_dim_red(df, fp, dr)
242
  labels = KMeans(n_clusters=int(nclu), random_state=42).fit_predict(pc) if cl == 'KMeans' else DBSCAN(eps=3, min_samples=2).fit_predict(pc)
243
  plotimg = plot_scatter(pc, labels, f"{dr}-{cl}")
244
+ # 圖像解釋
245
+ desc = explain_dimred(pc, labels, dr, cl)
246
  reps = cluster_reps(df, labels, fp)
247
  rep_img = batch_mol_imgs(reps)
248
+ return plotimg, desc, rep_img
249
+
250
  gr.Button("降維+分群分析", variant="primary").click(
251
  dimred_and_cluster, [file4, use_fp, dr_method, cl_method, nclus], [dr_img, dr_desc, rep_imgs]
252
  )