Rozeeeee commited on
Commit
ee1af71
·
verified ·
1 Parent(s): 6884f67

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -0
app.py CHANGED
@@ -3,6 +3,7 @@ import pandas as pd
3
  import numpy as np
4
  import requests
5
  import io
 
6
 
7
  # 下載 CSV 數據
8
  def download_and_load_csv(url):
@@ -37,6 +38,9 @@ def clean_and_merge_data(urls):
37
  # 依據 "公司名稱" 進行合併,將相同公司名稱的數據進行加總
38
  merged_df = combined_df.groupby("公司名稱", as_index=False).sum()
39
 
 
 
 
40
  return merged_df
41
 
42
  # CSV 來源
@@ -55,3 +59,17 @@ st.title("台灣企業 ESG 數據分析與揭露")
55
  # 顯示清理後的數據
56
  st.subheader("清理 & 合併後的數據預覽")
57
  st.dataframe(cleaned_df)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3
  import numpy as np
4
  import requests
5
  import io
6
+ import plotly.express as px
7
 
8
  # 下載 CSV 數據
9
  def download_and_load_csv(url):
 
38
  # 依據 "公司名稱" 進行合併,將相同公司名稱的數據進行加總
39
  merged_df = combined_df.groupby("公司名稱", as_index=False).sum()
40
 
41
+ # 將 NaN 值替換為 0
42
+ merged_df = merged_df.fillna(0)
43
+
44
  return merged_df
45
 
46
  # CSV 來源
 
59
  # 顯示清理後的數據
60
  st.subheader("清理 & 合併後的數據預覽")
61
  st.dataframe(cleaned_df)
62
+
63
+ # 繪製動態圖表
64
+ st.subheader("ESG 排放量動態圖表")
65
+
66
+ # 合併三個範疇的排放量數據,並將其轉換為長格式
67
+ emission_df = cleaned_df.melt(id_vars=["公司名稱"], value_vars=["範疇一排放量(噸CO2e)", "範疇二排放量(噸CO2e)", "範疇三排放量(噸CO2e)"],
68
+ var_name="排放範疇", value_name="排放量")
69
+
70
+ # 使用 Plotly 繪製動態柱狀圖
71
+ fig = px.bar(emission_df, x="公司名稱", y="排放量", color="排放範疇", title="各公司 ESG 排放量",
72
+ labels={"排放量": "排放量 (噸CO2e)", "公司名稱": "公司名稱", "排放範疇": "排放範疇"})
73
+
74
+ # 顯示圖表
75
+ st.plotly_chart(fig)