R:共现网络图例绘制
# 清除所有变量
rm(list = ls())
# 设置工作目录
setwd("C:\\Users\\Administrator\\Desktop\\新建文件夹\\Co-occurrence Network\\图例")
# 载入ggplot2包
library(ggplot2)
# 创建一个数据框,包含您想要在图例中展示的颜色和类别
# 确保Category是按照正确的顺序设置为因子类型
legend_data <- data.frame(
Category = factor(c("Proteobacteria", "Actinobacteria", "Bacteroidetes", "Others", "Fungi"),
levels = c("Proteobacteria", "Actinobacteria", "Bacteroidetes", "Others", "Fungi")),
Color = c("#76B4BD", "#E9C46A", "#88C695", "#F2A2C7", "#89CFF0")
)
# 使用ggplot绘制一个含有圆形图示的图,用于展示图例
ggplot(legend_data, aes(x = 1, y = Category, fill = Category)) +
geom_point(shape = 21, size = 5) + # 使用shape 21来绘制带边界的圆形,并设置大小
scale_fill_manual(values = legend_data$Color) +
theme_void() +
theme(legend.title = element_blank(),
legend.position = "right", # 可以通过调整此处来更精细地控制图例位置
legend.text = element_text(size = 12),
legend.background = element_rect(fill = "white", colour = NA), # 设置图例背景为白色
legend.key = element_blank(), # 移除图例项背景
legend.margin = margin(0, 0, 0, 0),
plot.background = element_rect(fill = "white", colour = NA), # 设置图的背景为白色
legend.direction = "vertical") # 确保图例以竖排形式显示
# 保存图形到PNG文件
ggsave("legend_plot.png", width = 6, height = 6, dpi = 600)
# 清除所有变量
rm(list = ls())
# 设置工作目录
setwd("C:\\Users\\Administrator\\Desktop\\新建文件夹\\Co-occurrence Network\\图例")
# 载入ggplot2包
library(ggplot2)
# 修改数据框来表示五个圆圈的位置和大小
circles_data <- data.frame(
x = c(1, 2, 3, 4, 5), # x坐标决定了圆圈的水平位置
y = c(1, 1, 1, 1, 1), # y坐标使所有圆圈都位于同一水平线上
size = c(5, 10, 15, 20, 25) # 更新为五个不同的大小值
)
# 使用ggplot绘制圆圈,确保背景为纯白色
ggplot(circles_data, aes(x = x, y = y)) +
geom_point(aes(size = size), shape = 21, fill = "black") + # 使用shape 21绘制带边界的圆形
theme_void() +
scale_size_area(max_size = 30) + # 控制圆圈大小的显示
theme(legend.position = "none",
plot.background = element_rect(fill = "white", colour = "white")) + # 设置背景为纯白色
xlim(0, 6) # 调整x轴的限制以适应五个圆圈
# 如果需要保存图像
ggsave("five_circles.png", width = 6, height = 3, dpi = 600)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)