# gramene-search 中文文档

规范地址：https://npmcn.com/package/gramene-search/

版本：2\.41\.3
npm 元数据更新时间：2026-11-03T16:46:46.555Z
中文译文更新时间：2026-11-03T19:16:36.187Z
软件包许可：MIT

本文由上游 README 机器翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/gramene-search
原文对照：https://npmcn.com/package/gramene-search/?lang=original
项目主页：https://github.com/warelab/gramene-search#readme
源码仓库：https://github.com/warelab/gramene-search

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：3 MB，13 个文件
- 模块格式：CommonJS
- TypeScript 类型：未声明
- 运行依赖：36 个
- 首次发布：2018-07-11T15:00:18.570Z
- 最新版本发布：2026-11-03T16:46:46.284Z
- 已发布版本数：326（近 12 个月 129 个）

## 中文简介

搜索gramene包装

## 安装

```sh
npm install gramene-search
```

也可以使用：`pnpm add gramene-search`、`yarn add gramene-search`、`bun add gramene-search`

## README

# gramene-search

这是基于 [redux-bundler](https://github.com/henrikjoreteg/redux-bundler) 示例应用程序

## 安装

`npm i`

为了让Parcel正确地转译导入的节点模块，这个hack是必要的。

编辑 `node_modules/@parcel/core/lib/summarizeRequest.js`

改变 `return !filePath.includes(NODE_MODULES);` 来 `return true;`

## 构建

`npm run build` 编译js以供在sorghum-webapp中使用，前提是你已经在同一个父目录中克隆了它

`npm run start-maize` 启动玉米泛基因组子位点

## 引物选项卡

引物基因细节标签嵌入 `PrimerDesigner` 从 [gramene-primers](https://github.com/warelab/gramene-primers)： PCR/qPCR引物设计； 基因组特异性检查和泛基因组覆盖检查，由gramene-swagger提供 `/primers` 端点。它只出现在设置的网站序列之后 `details.primers`：

-   `primers: true` 使用网站的 `grameneData` API。
-   `primers: {apiBase: 'https://data.sorghumbase.org/sorghum_v11', pangenome: false}` 将选项卡指向它必须服务的另一个swagger基URL `/primers`); `pangenome: false` 隐藏泛基因组检查。

保持密钥未设置(或 `false`)，其中API没有 `/primers` 端点。 设计师状态保持不变 `uiViewState.byGene[geneId].primers` 然后用 共享视图;恢复的视图重新运行设计，过期的检查作业显示“重新运行检查”。 粘贴的序列保留在该存储中，因此它可以在切换详细选项卡时保存下来，但它被忽略了 保存的视图；设计响应和检查结果也不保存。 基因链接检查结果打开在一个新的标签，所以设计和运行检查留在原地。 样式是在运行时注入的，所以不需要CSS导入。

`gramene-primers` 是依赖项(`^0.2.0`）. 为了尝试未释放的gramene引物变化， 在它上面安装一个打包的tar包(不是 `npm link` 或 `file:`（加载第二个React）； 接下来的 `npm install` 返回注册表版本。

```bash
cd ../gramene-primers && npm run pack:local       # gramene-primers-0.2.0.tgz
cd ../gramene-search && npm install --no-save ../gramene-primers/gramene-primers-0.2.0.tgz && rm -rf .parcel-cache
```

运行高粱的演示与一个swagger服务 `/primers`：

```bash
PRIMERS_API=https://data.sorghumbase.org/sorghum_v11a SUBSITE=sorghum npx parcel src/sorghum.html --port 1234
```

在高粱样本中(`src/demo.js`)选项卡仅在以下情况下显示 `PRIMERS_API` 设置; 它变得 `details.primers.apiBase`。

## 表达式选项卡

表达基因细节选项卡有这些子选项卡，都绘制在带有 [gramene-atlas-heatmap](https://github.com/warelab/atlas-heatmap)， warelab的React 18分支 EBI的地图集热图（解剖图）来源于 [gramene-anatomogram](https://github.com/warelab/anatomogram)）. 它们取代了旧的 iframe来 `dev.gramene.org/static/atlasWidget.html`。

-   **假字**:一个 `ExpressionAtlasHeatmap` 基因在物种内的相似之处 在选择器中选择，该选择器列出了该物种的所有研究（EBI和JGI）；只有该基因的研究 主持人的搜索结果携带 `expressed_in_gxa_attr_ss`）.
-   **EBI研究** (以前是“所有研究”；它的保存视图键仍然是 `'gene'`):一个 `ExpressionAtlasHeatmap` 基因的表达图谱研究。JGI的研究留下了 :其 `filterRows` 滴每一排书房谁的 `source` 是 `'JGI'` 在 网站的 `/experiments` 列表，即id为研究的加入的行，或id或名称为 研究的名称或开始 `'<study name> - '` （一项研究被第二个因素分割）。的热图 等待该列表（仅是第一次访问，因为列表是持久化的），因此JGI行永远不会闪现，并且 基因表达的研究（见下文）；如果无法获取列表，则绘制时不加过滤。
-   **变得更研究** (当基因在JGI研究中表达时显示，例如Mullet实验室的研究 `JGI-SB-1`．.`4` 在sorghum\_v11)：一个选择的JGI研究基因表达 和一个 `ExpressionFactorGrid` 研究对象的基因。在JGI中表达的基因 研究，但没有EBI基线研究在这个子标签上打开（其EBI研究热图将在下面） （截止），除非选择或保存了子选项卡。网格将研究的因素放在它的行和列上 （当它变化时，有机体部分在栏上）。有两个不同的因素，一个按钮交换它们；有更多的, _行_ 和 _列_ 选择器挑选它们，剩下的因子被折叠成行；一个 具有一个变化因素的研究被绘制为单行。存放多个样本的单元（组） 不同样本id的相同因子值每个样本分成一个波段，并悬停或聚焦a 波段显示其因子值、样本id、重复数和TPM。
-   **eFP浏览器** （其中BAR表示物种）：所选研究的eFP图像。

**下载。** 类比和EBI研究有一个 _下载_ 按钮在热图的控制，和JGI研究之一 网格的工具栏。它会打开一个对话框，询问 **文件名称** （预先填充，聚焦和选择）和a **格式**： _制表符分隔的文本（.tsv）_，每次对话框打开时选择，或 _JSON (. JSON)_。 _下载_ (或 输入)保存小部件在该名称下显示的数据，并添加格式的扩展名，除非名称已经存在 有吗，不管它被点击的次数有多频繁； _取消_ 所剩无几。该名称已经过处理，以便浏览器保存 与对话框显示的名称完全相同的文件(路径分隔符， `: * ? " < > |`控制和不可见 格式化字符和前导符 `~` 被删除，它被削减到200字节)和 _下载_ 是禁用的 当它是空白的。当热图显示没有数据时（“没有数据匹配您的过滤标准…”），对话框显示有 不需要下载，也不需要保存。

| 子 | 建议的文件名 | 保存 |
| --- | --- | --- |
| 假字 | `<gene>-paralogs-<experiment>` | 热图的行（平行图）和列如下所示：经过过滤器和排序，并且在放大时仅显示视图中的列 |
| EBI研究 | `<gene>-ebi-studies` | 相同的，每个研究一行（与页面上一样，省略了JGI行） |
| 变得更研究 | `<gene>-<JGI accession>` | 每一个基因研究的样本，每一行一个，无论网格的轴是什么：基因，研究，研究的因素，样本id，复制和TPM |

`<gene>` 是id标签查询(基因的 `atlas_id`，或其id)。热图的TSV 开始于 `#` 评论行（页面URL、时间、查询或实验、单位），然后是列的标题行 标签和每行一行；网格的TSV是一个普通的表。JSON具有相同的数据，包括id、单位和 `null` 对于没有数据，并将数据归功于其来源： `Expression Atlas` 对于EBI研究， `phytozome-next.jgi.doe.gov` （参见gramene-atlas-heatmap的README） _下载_）. 对于EBI实验，类比热图的对话框也链接到 _完整的实验数据 表达图谱_ （EBI的下载，以前的“所有数据”菜单项）；JGI研究没有这样的下载，所以它是 留给他们的。

细节:

-   `atlasUrl` 在站点配置中命名gramene-swagger `/gxa/` 要查询的实例， 如。 `'https://data.sorghumbase.org/sorghum_v11/gxa/'`． 取消设置，选项卡查询 `https://data.sorghumbase.org/auth_testing/gxa/`，旧部件的默认值。研究列表如下 从 `<grameneData>/experiments`． 基因表达的研究是它的 `expressed_in_gxa_attr_ss`，而搜索结果不包含这些内容，因此TAB会根据这些内容查找它们 基因(`<grameneData>/search?q=id:"<id>"&fl=id,expressed_in_gxa_attr_ss`, `grameneGeneStudies` 包)。如果查找失败，JGI研究提供每个JGI研究 物种。
-   EBI研究和JGI研究发送基因 `atlas_id` （或其id）。
-   链接在新选项卡中打开。 `resolveUrl` 在 `Expression.js` 点行，实验， “更多信息”，“表情图集”和EBI的下载链接，因为gramene的狂妄又回来了 相对的基因链接和一个空白 `geneQuery`;JGI研究保持了它们的Phytozome链接。为 `'download'` 它返回 `null` 当实验为JGI研究时(a `source: 'JGI'` ，或下载网址 `jgi.doe.gov`，其有效载荷将Phytozome的基因组页命名为 它的下载)，这将删除对话框的完整数据链接。
-   选择的子选项卡，平行实验，JGI研究和每个JGI研究的网格轴 （`jgiExperiment`， `jgiAxes`)被保存在 `uiViewState.byGene[geneId].expression` 和 与共享视图一起保存。
-   样式在运行时注入；Bootstrap 5 CSS和react-bootstrap 2来自主机。

`gramene-atlas-heatmap` 是依赖项(`^6.3.0`添加6.2.0 `filterRows` 和 `ExpressionFactorGrid`6.3.0下载对话框和 `downloadFileName`)，并带来 `gramene-anatomogram`． 要尝试未发布的分支更改， 在注册表版本上安装两个包的压缩包(不是 `npm link` 或 `file:`（加载第二个React）；接下来的 `npm install` 返回注册表版本。

```bash
cd ../anatomogram && npm run pack:local      # gramene-anatomogram-3.0.0.tgz
cd ../atlas-heatmap && npm run pack:local    # gramene-atlas-heatmap-6.3.0.tgz
cd ../gramene-search && npm install --no-save ../anatomogram/gramene-anatomogram-3.0.0.tgz \
  ../atlas-heatmap/gramene-atlas-heatmap-6.3.0.tgz && rm -rf .parcel-cache*
```

在另一个atlas实例上运行sorghum演示(`ATLAS_URL`)和数据发布 （`GRAMENE_DATA`、默认 `https://data.sorghumbase.org/sorghum_v10b`）; Sorghum\_v11有 变得更研究:

```bash
GRAMENE_DATA=https://data.sorghumbase.org/sorghum_v11 ATLAS_URL=https://data.sorghumbase.org/sorghum_v11/gxa/ \
  SUBSITE=sorghum npx parcel src/sorghum.html --port 1235
```

## 常见问题

### gramene-search 是什么？

搜索gramene包装

### 如何安装 gramene-search？

在项目目录运行 npm install gramene-search，或使用 pnpm add / yarn add / bun add。

### gramene-search 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/gramene-search 是否存在。

### gramene-search 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### gramene-search 可以商用吗？

gramene-search 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### gramene-search 还在维护吗？

最新版本 2\.41\.3 发布于 2026/11/04（今天）；至今共发布 326 个版本，其中过去 12 个月发布了 129 个；首次发布于 2018/07/11。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

