From 1dd7fa59e6777507de647f28127008e80cb2ba06 Mon Sep 17 00:00:00 2001 From: freefire <97975089@qq.com> Date: Mon, 13 Jan 2025 21:25:56 +0800 Subject: [PATCH] =?UTF-8?q?add=20=E6=9B=B4=E6=96=B0readme?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 114 +++++++++++++++++++++++++++++++-------------------- README_EN.md | 90 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 159 insertions(+), 45 deletions(-) create mode 100644 README_EN.md diff --git a/README.md b/README.md index 37e13ff..d7105cb 100644 --- a/README.md +++ b/README.md @@ -1,66 +1,90 @@

- +

-

CircosHeatmap-aardio

+

+ + CircosHeatmap-aardio +

一个基于 R 语言的环形热图绘制工具

-

- -

+
+ English +
+ +--- ## 📃 项目简介 -CircosHeatmap-aardio 是一个基于 R 语言的环形热图(Circos Heatmap)绘制工具,支持矩阵数据的聚类与可视化。通过 Aardio 实现图形界面,使得用户无需编写代码即可轻松使用该工具。项目旨在为科研人员、数据分析师等提供一种直观、便捷的数据可视化方式。 +CircosHeatmap-aardio 是一个基于 R 语言的环形热图(Circos Heatmap)绘制工具,支持矩阵数据的聚类与可视化。通过 Aardio 实现图形界面,用户无需编写代码即可轻松使用该工具。 + +--- ## ✨ 核心功能 -- **环形热图绘制**:基于 R 的 circlize 和 ComplexHeatmap 包,支持矩阵数据的聚类与可视化。 +- **环形热图绘制**:基于 R 的 `circlize` 和 `ComplexHeatmap` 包,支持矩阵数据的聚类与可视化。 - **图形界面**:使用 Aardio 实现图形界面,用户可以通过界面选择输入文件、设置参数并运行脚本。 -- **TODO: 自动文件格式转换**:支持自动识别 xls、xlsx、csv 文件格式,并在需要时转换为符合 R 脚本要求的临时 csv 文件。 +- **代码可视化与调试**:内置 R 代码编辑框,用户可查看和修改当前执行的 R 脚本,便于自定义调试。 +- **日志输出**:提供日志窗口,实时显示脚本执行结果和错误信息。 + +--- + +## 🚀 使用教程 + +### 1. 下载并解压 +从 [Releases](./releases) 下载并解压 CircosHeatmap-aardio。 + +### 2. 运行程序 +运行 `CircosHeatmap-aardio.exe`,首次运行时会自动安装 R 环境。 + +![demo](./res/demo.jpg) + +### 3. 选择数据源 +点击 **“数据源”** 选择 csv 格式的表格文件。 + +> **注意**:当前仅支持 csv 格式的数据源。如果您的数据是其他格式(如 xls、xlsx),可以将其转换为 csv 格式后再使用。 + +### 4. 生成 PDF +点击 **“生成 PDF”** 选择 PDF 保存的位置。 + +--- + +## 🛠️ 程序功能细节 + +### 界面布局 +- **R 代码编辑框**:显示当前执行的 R 脚本,用户可查看和修改代码。 +- **日志窗口**:实时显示脚本执行结果和错误信息。 +- **数据源选择**:通过按钮选择输入文件,支持 csv 格式。 +- **生成 PDF**:运行 R 脚本并保存生成的环形热图为 PDF 文件。 + +### 代码逻辑 +- **R 脚本加载**:程序启动时自动加载默认的 R 脚本(`heatmap_script.R`)。 +- **文件选择**:点击 **“数据源”** 按钮选择输入文件,路径显示在输入框中。 +- **脚本执行**:点击 **“生成 PDF”** 按钮后,程序调用 R 脚本并传入输入文件路径和输出 PDF 路径。 + +--- ## 📝 TODO -- **优化 UI**:进一步提升用户交互体验,增加更多可视化选项。 -- **支持更多文件格式**:扩展支持更多数据文件格式。 +- **优化 UI**:进一步提升用户交互体验。 +- **支持更多文件格式**:扩展支持 xls、xlsx 等格式。 - **增加高级功能**:如自定义颜色梯度、调整聚类参数等。 -- **待补充**。 - -## 🛠️ 开发 - -1. 将 Windows 当前用户下 `appData` 目录中的 `aardio/std/r/site-library` 内容拷贝到项目中 —— 当前仓库已包含,可不用关注。 -2. 将 `aardio\lib\process\r\_.aardio` 文件中: - ```aardio - setLibPaths({..io.appData("aardio/std/r/site-library")}); - ``` - 修改为: - ```aardio - if (_STUDIO_INVOKED) { - // 开发环境 - setLibPaths({..io.appData("aardio/std/r/site-library")}); - } else { - // 打包后环境 - setLibPaths({"lib\r-library"}); - } - ``` - -**修改目的**:初次接触 aardio + R 的开发,安装 R 的相关库时遇到无法安装部分 R 库的问题,所以干脆把安装好的 R 相关库放入程序根目录下,便于将程序分发给别人使用。 - -**缺点**:R 库体积偏大,100MB+,不过真正需要的人应该不在乎体积吧。 - -## 🚀 使用 - -1. 从 [Releases](https://gitea.iioio.com:3000/BiomedEngX/CircosHeatmap-aardio/releases) 下载并解压 CircosHeatmap-aardio - -2. 运行 CircosHeatmap-aardio.exe,首次运行时会自动安装 R 环境 -![demo](./res/demo.jpg) - -3. 点击 “数据源” 选择 csv 格式的表格文件,然后点击 “生成pdf” 选择pdf保存的位置 - -注意:当前仅支持 csv 格式的数据源,可以自行新建一个 csv 文件后,将目标数据拷贝到这个 csv 文件中,然后再使用 CircosHeatmap-aardio.exe 进行生成 pdf。 +--- ## ✨ 贡献 -欢迎贡献、建议、错误报告和修复! \ No newline at end of file +欢迎贡献、建议、错误报告和修复!如果您有任何想法或问题,请随时提交 [Issue](./issues/new) 或 [Pull Request](#pull-request-说明)。 + +--- + +## ❓ Pull Request 说明 + +**Pull Request(PR)** 是一种向项目贡献代码的方式。具体步骤如下: + +1. **Fork 项目**:点击项目页面的 `Fork` 按钮,将项目复制到您的账号下。 +2. **创建分支**:在您的 Fork 仓库中创建一个新分支,用于开发新功能或修复问题。 +3. **提交更改**:在新分支上完成代码修改后,提交更改。 +4. **发起 Pull Request**:在您的 Fork 仓库页面,点击 `New Pull Request`,选择您的分支并提交 PR。 +5. **等待审核**:项目维护者会审核您的代码,确认无误后合并到主分支。 \ No newline at end of file diff --git a/README_EN.md b/README_EN.md new file mode 100644 index 0000000..599c15e --- /dev/null +++ b/README_EN.md @@ -0,0 +1,90 @@ +

+ +

+

+ + CircosHeatmap-aardio +

+

+ A Circular Heatmap Visualization Tool Based on R Language +

+ +
+ 中文 +
+ +--- + +## 📃 Project Introduction + +CircosHeatmap-aardio is a circular heatmap (Circos Heatmap) visualization tool based on R language. It supports clustering and visualization of matrix data. Through the Aardio graphical interface, users can easily use the tool without writing any code. + +--- + +## ✨ Core Features + +- **Circular Heatmap Visualization**: Based on R's `circlize` and `ComplexHeatmap` packages, it supports clustering and visualization of matrix data. +- **Graphical Interface**: Implemented with Aardio, allowing users to select input files, set parameters, and run scripts through the interface. +- **Code Visualization and Debugging**: Built-in R code editor for viewing and modifying the current R script. +- **Log Output**: Provides a log window to display script execution results and error messages. + +--- + +## 🚀 Quick Start + +### 1. Download and Extract +Download and extract CircosHeatmap-aardio from [Releases](./releases). + +### 2. Run the Program +Run `CircosHeatmap-aardio.exe`. The R environment will be automatically installed on the first run. + +![demo](./res/demo.jpg) + +### 3. Select Data Source +Click **"Data Source"** to select a csv file. + +> **Note**: Currently, only csv format is supported. If your data is in other formats (e.g., xls, xlsx), convert it to csv before use. + +### 4. Generate PDF +Click **"Generate PDF"** to select the save location. + +--- + +## 🛠️ Program Details + +### Interface Layout +- **R Code Editor**: Displays the current R script for viewing and modification. +- **Log Window**: Shows script execution results and error messages in real-time. +- **Data Source Selection**: Select input files via button (supports csv format). +- **Generate PDF**: Run the R script and save the generated circular heatmap as a PDF file. + +### Code Logic +- **R Script Loading**: The default R script (`heatmap_script.R`) is loaded on program startup. +- **File Selection**: Click **"Data Source"** to select an input file, and the path is displayed in the input box. +- **Script Execution**: Click **"Generate PDF"** to execute the R script with the input file path and output PDF path. + +--- + +## 📝 TODO + +- **UI Improvements**: Enhance user interaction and experience. +- **Support More File Formats**: Extend support for xls, xlsx, etc. +- **Advanced Features**: Add features like custom color gradients and clustering parameter adjustments. + +--- + +## ✨ Contributions + +Contributions, suggestions, bug reports, and fixes are welcome! If you have any ideas or questions, please submit an [Issue](./issues/new) or [Pull Request](#pull-request-guide). + +--- + +## ❓ Pull Request Guide + +**Pull Request (PR)** is a way to contribute code to the project. Follow these steps: + +1. **Fork the Project**: Click the `Fork` button on the project page to create a copy under your account. +2. **Create a Branch**: Create a new branch in your forked repository for developing new features or fixing issues. +3. **Commit Changes**: Make your changes in the new branch and commit them. +4. **Submit a Pull Request**: On your forked repository page, click `New Pull Request`, select your branch, and submit the PR. +5. **Wait for Review**: The project maintainer will review your code and merge it into the main branch if everything is OK. \ No newline at end of file