gramene-search
这是基于 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: PCR/qPCR引物设计;
基因组特异性检查和泛基因组覆盖检查,由gramene-swagger提供
/primers 端点。它只出现在设置的网站序列之后
details.primers:
primers: true使用网站的grameneDataAPI。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 返回注册表版本。
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:
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, warelab的React 18分支
EBI的地图集热图(解剖图)来源于
gramene-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研究时(asource: '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 和
ExpressionFactorGrid6.3.0下载对话框和 downloadFileName),并带来
gramene-anatomogram. 要尝试未发布的分支更改,
在注册表版本上安装两个包的压缩包(不是 npm link 或
file:(加载第二个React);接下来的 npm install 返回注册表版本。
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有
变得更研究:
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