# huongdm1896/survey_artifact_suscom architecture

> Architecture diagram of the GitHub repository huongdm1896/survey_artifact_suscom, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-28). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/huongdm1896/survey_artifact_suscom
- Repository: https://github.com/huongdm1896/survey_artifact_suscom

## Overview

This is a survey-research repository: it collects candidate articles and analyzes categorized article data into visualizations. The primary analysis workflow reads `analysis/Data.ods` in the notebook and produces figures under `analysis/figure/`; the separate collection tool queries Google Scholar and saves article metadata to an Excel file. README paths and some described directories do not match the tree, so this map uses only paths present in the tree. The notebook’s internal steps were not sampled, so its processing is shown at notebook level.

Main entry points: [`collect/gg_scholar_avoid_ip.py`](https://github.com/huongdm1896/survey_artifact_suscom/blob/main/collect/gg_scholar_avoid_ip.py) (Scholar scraper), [`analysis/plot.ipynb`](https://github.com/huongdm1896/survey_artifact_suscom/blob/main/analysis/plot.ipynb) (Analysis notebook), [`analysis/Data.ods`](https://github.com/huongdm1896/survey_artifact_suscom/blob/main/analysis/Data.ods) (Content analysis), [`collect_result/Data_EC_FL.xlsx`](https://github.com/huongdm1896/survey_artifact_suscom/blob/main/collect_result/Data_EC_FL.xlsx) (Collected articles)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_collection["Article collection"]
  node_scraper["Scholar scraper"]
end

subgraph group_analysis["Survey analysis"]
  node_content_data["Content analysis<br/>[Data.ods]"]
  node_notebook["Analysis notebook<br/>[plot.ipynb]"]
end

subgraph group_outputs["Research artifacts"]
  node_article_xlsx["Collected articles<br/>[Data_EC_FL.xlsx]"]
  node_plots["Analysis figures"]
  node_zotero_export["Zotero export"]
  node_survey_compare["Survey comparison<br/>[Survey_compare.ods]"]
  node_energy_data["Energy datasets"]
end

node_researcher(("Researcher"))
node_scholar["Google Scholar"]

node_researcher -->|"sets search"| node_scraper
node_scraper -->|"fetches results"| node_scholar
node_scraper -->|"saves metadata"| node_article_xlsx
node_researcher -->|"runs analysis"| node_notebook
node_content_data -->|"provides data"| node_notebook
node_notebook -->|"generates plots"| node_plots

click node_scraper "https://github.com/huongdm1896/survey_artifact_suscom/blob/main/collect/gg_scholar_avoid_ip.py"
click node_article_xlsx "https://github.com/huongdm1896/survey_artifact_suscom/blob/main/collect_result/Data_EC_FL.xlsx"
click node_content_data "https://github.com/huongdm1896/survey_artifact_suscom/blob/main/analysis/Data.ods"
click node_notebook "https://github.com/huongdm1896/survey_artifact_suscom/blob/main/analysis/plot.ipynb"
click node_plots "https://github.com/huongdm1896/survey_artifact_suscom/tree/main/analysis/figure"
click node_zotero_export "https://github.com/huongdm1896/survey_artifact_suscom/blob/main/analysis/Exported_ID_Zotero.csv"
click node_survey_compare "https://github.com/huongdm1896/survey_artifact_suscom/blob/main/Survey_compare.ods"
click node_energy_data "https://github.com/huongdm1896/survey_artifact_suscom/tree/main/collect_result"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_scraper toneBlue
class node_content_data,node_notebook toneAmber
class node_article_xlsx,node_plots,node_zotero_export,node_survey_compare,node_energy_data toneMint
class node_researcher,node_scholar toneIndigo
```

## Components

### Article collection

- [Scholar scraper](https://github.com/huongdm1896/survey_artifact_suscom/blob/main/collect/gg_scholar_avoid_ip.py): `collect/gg_scholar_avoid_ip.py`

### Survey analysis

- [Content analysis](https://github.com/huongdm1896/survey_artifact_suscom/blob/main/analysis/Data.ods): `analysis/Data.ods`
- [Analysis notebook](https://github.com/huongdm1896/survey_artifact_suscom/blob/main/analysis/plot.ipynb): `analysis/plot.ipynb`

### Research artifacts

- [Collected articles](https://github.com/huongdm1896/survey_artifact_suscom/blob/main/collect_result/Data_EC_FL.xlsx): `collect_result/Data_EC_FL.xlsx`
- [Analysis figures](https://github.com/huongdm1896/survey_artifact_suscom/tree/main/analysis/figure): `analysis/figure`
- [Zotero export](https://github.com/huongdm1896/survey_artifact_suscom/blob/main/analysis/Exported_ID_Zotero.csv): `analysis/Exported_ID_Zotero.csv`
- [Survey comparison](https://github.com/huongdm1896/survey_artifact_suscom/blob/main/Survey_compare.ods): `Survey_compare.ods`
- [Energy datasets](https://github.com/huongdm1896/survey_artifact_suscom/tree/main/collect_result): `collect_result`

### Other components

- **Researcher**
- **Google Scholar**

## Connections

- Researcher → Scholar scraper: sets search
- Scholar scraper → Google Scholar: fetches results
- Scholar scraper → Collected articles: saves metadata
- Researcher → Analysis notebook: runs analysis
- Content analysis → Analysis notebook: provides data
- Analysis notebook → Analysis figures: generates plots
