Jayden

Jayden

通过ConSurf的序列保守性颜色蛋白模型

ConSurf | 蛋白质的进化保守性分析,它分析蛋白质的序列保守性并根据结果为模型上色,如果你研究的蛋白质在结构上是保守的但在序列上有所不同,这可能会很有帮助。

分析保守性#

你需要准备的只是一个蛋白质模型,如果你没有模型,至少需要序列,结构可以从中预测

如果你有一个 ** 多序列比对(MSA)** 文件,你可以上传它,然后将使用该序列生成保守性分析结果。

然后你的模型将根据结果上色

自定义颜色#

在 ConSurf 中模型没有颜色选择,但你可以使用 Pymol 来实现。

  1. 下载 Pymol 的结果

  2. RAMPGEN.COM生成颜色梯度,然后复制 JSON 格式并替换脚本中的颜色:

    :::grid {cols=2,rows=1,gap=12,type=images}
    生成颜色梯度
    复制 JSON 格式结果
    :::

  3. 将你的颜色梯度粘贴到脚本中并将其保存为set_colors.py

    # 该脚本在ChatGPT的帮助下完成
    color_data = [
           # 在这里粘贴你的颜色梯度。
        ]
    
    # 定义颜色并将颜色设置为相应的对象
    for i, item in enumerate(color_data, start=1):
        hex_color = item['color']
        # 将HEX转换为RGB
        r, g, b = int(hex_color[1:3], 16), int(hex_color[3:5], 16), int(hex_color[5:], 16)
        rgb = (r/255.0, g/255.0, b/255.0)
        
        # 设置颜色
        color_name = f"color_{i}"
        pymol.cmd.set_color(color_name, rgb)
        
        # 将颜色应用于对象
        object_name = f"all_group_{i}"
        pymol.cmd.color(color_name, object_name)
    
    # 确保视图已更新
    pymol.cmd.rebuild()
    
  4. 你的脚本应如下所示:

    color_data = [
            {
                 "values": 0,
                 "color": "#F6936F"
            },
            {
                 "value": 12.50,
                 "color": "#F8AE93"
            },
            {
                 "value": 25.00,
                 "color": "#FAC9B7"
            },
            {
                 "value": 37.50,
                 "color": "#FCE4DB"
            },
            {
                 "value": 50.00,
                 "color": "#FFFFFF"
            },
            {
                 "value": 62.50,
                 "color": "#DDEBF1"
            },
            {
                 "value": 75.00,
                 "color": "#BCD7E4"
            },
            {
                 "value": 87.50,
                 "color": "#9BC3D6"
            },
            {
                 "value": 100,
                 "color": "#7AAFC9"
            }
        ]
    
    # 定义颜色并将颜色设置为相应的对象
    for i, item in enumerate(color_data, start=1):
        hex_color = item['color']
        # 将HEX转换为RGB
        r, g, b = int(hex_color[1:3], 16), int(hex_color[3:5], 16), int(hex_color[5:], 16)
        rgb = (r/255.0, g/255.0, b/255.0)
        
        # 设置颜色
        color_name = f"color_{i}"
        pymol.cmd.set_color(color_name, rgb)
        
        # 将颜色应用于对象
        object_name = f"all_group_{i}"
        pymol.cmd.color(color_name, object_name)
    
    # 确保视图已更新
    pymol.cmd.rebuild()
    
  5. 在 Pymol 中加载 ConSurf 结果,并从 “文件 -> 运行脚本...” 运行脚本

    :::grid {cols=2,rows=1,gap=12,type=images}
    原始颜色梯度
    调整后的颜色梯度
    :::

此文由 Mix Space 同步更新至 xLog
原始链接为 https://xxu.do/posts/structure/Color-the-model-by-sequence-conservation-with-ConSurf


加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。