跟着高分SCI学作图 -- 个性化森林图

已经付费加群的小伙伴无需二次付费,等待师兄后续更新即可!

5260a1d4f6ec9f57ece15ac5be868eaf.png
封面

从这个系列开始,师兄就带着大家从各大顶级期刊中的Figuer入手,从仿照别人的作图风格到最后实现自己游刃有余的套用在自己的分析数据上!这一系列绝对是高质量!还不赶紧「点赞+在看」,学起来!

本期分享的是期刊:「Nature Microbiology(IF = 30.96)」上面一篇文章中的一个「个性化森林图」

本系列所有代码和示例数据将会和生信常用图形系列绘图放在一起,扫描下方二维码添加师兄微信,「付费179元(随着群内绘图资源的增加,入群费用也会随之增加,1群¥99 -- 已满,2群¥149 -- 已满,3群¥169 -- 已满)」,即可加入生信绘图交流群。「群内不仅提供生信常用图形系列的代码,还会提供本系列后续所有Figure的实例数据和代码,我会在文章更新后第一时间上传。」

3f6d9f1dd5f372512ee3d84cd5e48c8c.png
师兄微信

当然了!如果你还想白嫖,师兄的文章中代码已经写的很清楚了!但是师兄还是希望你点个赞再走呗!

以上就是本期的全部内容啦!「欢迎点赞,点在看!」师兄会尽快更新哦!制作不易,你的打赏将成为师兄继续更新的十足动力!

「优惠方式:点赞+在看,并转发这两个系列任意一篇文章至朋友圈,集赞30个,即可享受¥149入群!」

571689d87429e8693b184535c50e8518.png
参考文献

话不多说,直接上图!

读图

14854706125f99bba8f1ccc312322661.png
原图

效果展示

d844a38ceaca0ba8cea62f491e7f1d3c.png
复现效果

本期图形完全使用ggplot2包实现,可以看到绝大部分的细节都被完美还原!

制作不易,欢迎大家看完给个「免费的赞和在看!」让更多的小伙伴看见我们的教程吧!

绘图群附加福利

凡是「已经加群」的小伙伴,你们在看文献的时候如果看到好看的Figure,可以发到群里!师兄会及时关注的,「如果被师兄选中,就会在推文中更新!」

本期图形也是来源于群员推荐哦!

凡是「已经加群」的小伙伴,你们在看文献的时候如果看到好看的Figure,可以发到群里!师兄会及时关注的,「如果被师兄选中,就会在推文中更新!」

Figure的要求如下(被选中的前提):
  • 首先肯定是要符合大众审美的,在图形样式上要过关。

  • 新颖独特,有与常见图形不一样的地方。

  • 有一定难度,太简单的大家都会做,没什么挑战性哈!

往期选中案例
2167ed50788b40ff1e3c4155f9659628.png
往期选中案例01
e103ae5a0af216ab71410dab9a5d250b.png
往期选中案例

R包载入、数据构建和整理

library(ggplot2)

# 构造数据:
min <- round(runif(28, -1, 0.7), 2)
sd <- round(runif(28, 0.2, 0.3), 2)
max <- min+sd
med <- (min+max)/2

data <- as.data.frame(cbind(min, med, max))
data$x <- factor(read.csv("rownames.csv", header = F)[,1],
                 levels = rev(read.csv("rownames.csv", header = F)[,1]))
data$group <- paste0("group", c(rep(1, 14), rep(2, 3),
                                rep(3, 3), rep(4, 5),
                                rep(5, 3)))
data$group_col <- c(rep("#e7a40e", 14), rep("#78bee5", 3),
                    rep("#1c6891", 3), rep("#a59d70", 5),
                    rep("#4f4a30", 3))

data$p <- c(rep("", 5), rep("*", 8),
            rep("**", 9), rep("***", 6))[sample(1:28)]

data$p_col[which(data$p != "" & data$med > 0)] <- "Postive effect(P<0.05)"
data$p_col[which(data$p == "" & data$med > 0)] <- "Postive effect(P>=0.05)"
data$p_col[which(data$p != "" & data$med <= 0)] <- "Negtive effect(P<0.05)"
data$p_col[which(data$p == "" & data$med <= 0)] <- "Negtive effect(P>=0.05)"

head(data)
#     min    med   max              x  group group_col   p                   p_col
# 1  0.17  0.320  0.47  Acidobacteria group1   #e7a40e   *  Postive effect(P<0.05)
# 2  0.33  0.430  0.53 Actinobacteria group1   #e7a40e     Postive effect(P>=0.05)
# 3 -0.75 -0.645 -0.54  Bacteroidetes group1   #e7a40e  **  Negtive effect(P<0.05)
# 4 -0.81 -0.695 -0.58     Chlamydiae group1   #e7a40e  **  Negtive effect(P<0.05)
# 5 -0.73 -0.625 -0.52    Chloroflexi group1   #e7a40e ***  Negtive effect(P<0.05)
# 6  0.03  0.150  0.27     Firmicutes group1   #e7a40e   *  Postive effect(P<0.05)

绘图

ggplot(data)+
  # 0轴竖线:
  geom_hline(yintercept = 0, linewidth = 0.3)+
  # 线条:
  geom_linerange(aes(x, ymin = min, ymax = max, color = p_col), show.legend = F)+
  # 散点:
  geom_point(aes(x, med, color = p_col)) +
  # 显著性:
  geom_text(aes(x, y = max + 0.05, label = p, color = p_col), show.legend = F)+
  # 颜色:
  scale_color_manual(name = "",
                     values = c("Postive effect(P<0.05)" = "#d55e00",
                                "Postive effect(P>=0.05)" = "#ffbd88",
                                "Negtive effect(P<0.05)" = "#0072b2",
                                "Negtive effect(P>=0.05)" = "#7acfff"))+
  # 背景色:
  annotate("rect",
           xmin = c(0.5,3.5,8.5,11.5,14.5),
           xmax = c(3.5,8.5,11.5,14.5,28.5),
           ymin = -1, ymax = 1, alpha = 0.2, fill = rev(unique(data$group_col))) +
  # 调整x轴拓宽:
  scale_y_continuous(expand = c(0,0))+
  xlab("")+
  ylab("Warming effect size")+
  theme_bw()+
  theme(axis.text.y = element_text(color = rev(data$group_col)))+
  coord_flip()

ggsave("plots.pdf", height = 6, width = 6)
8cfceccc57de1e7b69b61417b99147e0.png
复现效果

往期优秀图形目录

9ff8624f85a6a18e0ca8ba3c8f20d547.png
渐变火山图
1092a0eac877b7357d2db723426c73db.png
气泡图+相关性热图
8d27fb39f42661c58de1690343d3d18d.png
复杂提琴图
913f656c0f07d1e7294c9593f0f03301.png
复杂热图
973d2048d48894b1b408c83540f1668a.png
复杂散点图
a4da8bdcdcaaadd573cf4f571d3cdf51.png
复杂热图02
1eefa9fcc69eb139c9c81a5db09c23ee.png
甘特图
14f655160192d2110dc0e277a34af0b4.png
百分比柱状图
70d4ae123b78355107902f4786b81c26.png
箱线图美化
d80e3dbbc6e3433a5e2730e16b76603d.png
弦图
0d88e1cd55dfbbe5a7632ae2b8935734.png
mantel test图
924af9a2f06dd5b8b7760123b1f43295.png
瀑布图
1e82fdefc227627f678e797925c793be.png
曼哈顿图
8d2ee672d44bfa285d2c65dd1b38dbf2.png
复杂热图+堆积柱状图
82c8796da9fd407d0f382fd3b57dc7ab.png
KEGG富集图

以上内容仅为群内部分内容,不代表全部。详细目录请看下方列表!已经入群的小伙伴,无需付费购买推文,群内都会及时更新!

示例数据和代码获取

本系列所有代码和示例数据将会和生信常用图形系列绘图放在一起,公众号右下角添加师兄微信,「付费179元」,即可加入生信绘图交流群。「群内不仅提供生信常用图形系列的代码,还会提供本系列后续所有Figure的实例数据和代码,我会在文章更新后第一时间上传。」

当然了!如果你还想白嫖,师兄的文章中代码已经写的很清楚了!但是师兄还是希望你点个赞再走呗!

以上就是本期的全部内容啦!「欢迎点赞,点在看!」师兄会尽快更新哦!制作不易,你的打赏将成为师兄继续更新的十足动力!

「优惠方式:点赞+在看,并转发这两个系列任意一篇文章至朋友圈,集赞30个,即可享受¥149入群!」

往期文章

  1. 跟着Nature Medicine学作图 -- 箱线+散点图

  2. 跟着Nature Communications学作图 -- 渐变火山图

  3. 跟着Nature Communications学作图 -- 气泡图+相关性热图

  4. 跟着Nature Communications学作图 -- 复杂提琴图

  5. 跟着Nature Medicine学作图 -- 复杂热图

  6. 跟着Nature Com学作图 -- 复杂散点图

  7. 跟着高分SCI学作图 -- 气泡火山图

  8. 跟着高分SCI学作图--复杂热图02

  9. 跟着Nature Communications学作图 -- 甘特图

  10. 跟着Nature Communications学作图 -- 双向柱状图

  11. 跟着Nature Communications学做图 -- 批量散点图+拟合曲线

  12. 跟着Nature Communications学作图 -- 箱线图美化

  13. 跟着Nature Communications学作图 -- 复杂百分比柱状图

  14. 跟着Nature Communications学作图 -- 渐变柱状图

  15. 跟着Molecular Cancer学作图 -- 分半小提琴图

  16. 跟着高分SCI学作图 -- 复杂热图+渐变色连线

  17. 跟着Nature Communications学作图 -- 复杂热图+堆积柱状图注释

  18. 跟着Cell学作图 -- 单细胞分组火山图

  19. 跟着高分SCI学作图 -- 堆积柱状图+折线+热图注释

  20. 跟着Nucleic Acids Research学作图 -- 多组学九象限散点图

  21. 跟着Nature Communications作图 -- 分组散点图+直方图注释

  22. 跟着Nature Medicine学作图 -- 复杂环形热图

  23. 跟着Nucleic Acids Research作图 -- 泛癌箱线图+显著性检验

  24. 跟着Proc Natl Acad Sci学作图 -- 矩阵饼图+分组注释

  25. 跟着Proc Natl Acad Sci学作图 -- 三维PCA图

  26. 跟着高分SCI学作图 -- 相关性气泡图+显著性热图

  27. 跟着Nature学作图 -- 分面箱线图+热图注释

  28. 跟着Nature学作图 --分面双向柱状图+热图注释

  29. 跟着Nature学作图 --分面堆积面积图

  30. 跟着Nature Communications学作图 -- 形状火山图

  31. 跟着高分SCI学作图 -- 环形热图+环形散点图

  32. 跟着高分SCI学作图 -- 表达定量雷达图

  33. 生信常用分析图形绘制01 -- 各种类型的热图你学会了吗?

  34. 生信常用分析图形绘制02 -- 解锁火山图真谛!

  35. 生信常用分析图形绘制03 -- 富集分析圈图

  36. 生信常用分析图形绘制04 -- 桑基图

  37. 生信常用分析图形绘制05 -- 弦图

  38. 生信常用分析图形绘制06 -- 富集分析分组柱状图+气泡图

  39. 生信常用分析图形绘制07 -- PCA图

  40. 生信常用分析图形绘制08--云雨图

  41. 生信常用分析图形绘制09 -- Venn图

  42. 生信常用分析图形绘制10 -- 环形互作网络图

  43. 生信常用分析图形绘制11 -- 相互作用网络图

  44. 生信常用分析图形绘制12 -- 聚类树美化

  45. 生信常用分析图形绘图13 -- 富集进阶气泡图

  46. 生信常用分析图形绘制14 -- mantel test相关性图

  47. 生信常用分析图形绘制15 -- 词云图

  48. 生信常用分析图形绘制16 -- 瀑布图

  49. 生信常用分析图形绘制17 -- 森林图

  50. 生信常用分析图形绘制18 -- 曼哈顿图

  51. 生信常用分析图形绘制19 -- KEGG分组柱状图

  52. 生信常用分析图形绘制20 -- 哑铃图

  53. 生信常用分析图形绘制21 -- 三线表绘制及美化

  54. 生信常用分析图形绘制22 -- 嵌套圈图

  55. 生信常用分析图形绘制23 -- 列线图

  56. 生信常用分析图形绘制24-- 蜂群图

  57. 生信常用分析图形绘制25 -- 箱线图+贝塞尔曲线

  58. 生信常用分析图形绘制26 -- 相关性矩阵图+矩阵散点图

  59. 生信常用分析图形绘制27 -- 交互式热图+局部放大

  60. 生信常用分析图形绘制28 -- 层状结构的多种可视化

### LlamaIndex 多模态 RAG 实现 LlamaIndex 支持多种数据类型的接入与处理,这使得它成为构建多模态检索增强生成(RAG)系统的理想选择[^1]。为了实现这一目标,LlamaIndex 结合了不同种类的数据连接器、索引机制以及强大的查询引擎。 #### 数据连接器支持多样化输入源 对于多模态数据的支持始于数据收集阶段。LlamaIndex 的数据连接器可以从多个异构资源中提取信息,包括但不限于APIs、PDF文档、SQL数据库等。这意味着无论是文本还是多媒体文件中的内容都可以被纳入到后续的分析流程之中。 #### 统一化的中间表示形式 一旦获取到了原始资料之后,下一步就是创建统一而高效的内部表达方式——即所谓的“中间表示”。这种转换不仅简化了下游任务的操作难度,同时也提高了整个系统的性能表现。尤其当面对复杂场景下的混合型数据集时,良好的设计尤为关键。 #### 查询引擎助力跨媒体理解能力 借助于内置的强大搜索引擎组件,用户可以通过自然语言提问的形式轻松获得所需答案;而对于更复杂的交互需求,则提供了专门定制版聊天机器人服务作为补充选项之一。更重要的是,在这里实现了真正的语义级关联匹配逻辑,从而让计算机具备了一定程度上的‘认知’功能去理解和回应人类意图背后所蕴含的意义所在。 #### 应用实例展示 考虑到实际应用场景的需求多样性,下面给出一段Python代码示例来说明如何利用LlamaIndex搭建一个多模态RAG系统: ```python from llama_index import GPTSimpleVectorIndex, SimpleDirectoryReader, LLMPredictor, PromptHelper, ServiceContext from langchain.llms.base import BaseLLM import os def create_multi_modal_rag_system(): documents = SimpleDirectoryReader(input_dir='./data').load_data() llm_predictor = LLMPredictor(llm=BaseLLM()) # 假设已经定义好了具体的大型预训练模型 service_context = ServiceContext.from_defaults( chunk_size_limit=None, prompt_helper=PromptHelper(max_input_size=-1), llm_predictor=llm_predictor ) index = GPTSimpleVectorIndex(documents, service_context=service_context) query_engine = index.as_query_engine(similarity_top_k=2) response = query_engine.query("请描述一下图片里的人物表情特征") print(response) ``` 此段脚本展示了从加载本地目录下各类格式文件开始直到最终完成一次基于相似度排序后的top-k条目返回全过程。值得注意的是,“query”方法接收字符串参数代表使用者想要询问的内容,而在后台则会自动调用相应的解析模块并结合先前准备好的知识库来进行推理计算得出结论。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值