ggplot2怎么实现发散性正负图
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,本篇内容介绍了"ggplot2怎么实现发散性正负图"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一
千家信息网最后更新 2026年11月03日ggplot2怎么实现发散性正负图
本篇内容介绍了"ggplot2怎么实现发散性正负图"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
一 载入数据并处理
library(ggplot2)# 使用mtcars数据集data("mtcars") # 保留car name ,新建一列mtcars$car_name <- rownames(mtcars) # 对mpg进行标准化处理 mtcars$mpg_z <- round((mtcars$mpg - mean(mtcars$mpg))/sd(mtcars$mpg), 2) # 按照0未阈值 ,分上 下mtcars$mpg_type <- ifelse(mtcars$mpg_z < 0, "below", "above") mtcars <- mtcars[order(mtcars$mpg_z), ] # 为展示美观,数据排序# 改为因子,能够保持原顺序mtcars$car_name <- factor(mtcars$car_name, levels = mtcars$car_name)注:改为因子使图形按照原顺序输出,很常用。
二 Diverging bars
Diverging bars是一种可以同时处理负值和正值的条形图。注意为了使柱状图创建柱形图而不是直方图,需要确保:
(1)设置stat=identity
(2)在aes()中同时提供x和y,其中x是字符或因子,y是数值。
Diverging Barcharts
ggplot(mtcars, aes(x=car_name, y=mpg_z, label=mpg_z)) + geom_bar(stat='identity', aes(fill=mpg_type), width=.5) + scale_fill_manual(name="Mileage", labels = c("Above Average", "Below Average"), values = c("above"="#00ba38", "below"="#f8766d")) + labs(subtitle="Normalised mileage from 'mtcars'", title= "Diverging Bars") + coord_flip() + theme_bw()三 Diverging Lollipop Chart
Lollipop Chart与上述类似,而是使用 geom_point 和 geom_segment 来获得想展示的图。
ggplot(mtcars, aes(x=car_name, y=mpg_z, label=mpg_z)) + geom_point(stat='identity', color="orange",size=4) + geom_segment(aes(y = 0, x =car_name, yend = mpg_z, xend =car_name), color = "grey") + labs(title="Diverging Lollipop Chart") + ylim(-2.5, 2.5) + coord_flip() + theme_bw()
四 Diverging Dot Plot
同样可以用点图传达相似的信息,圈圈里面加上具体的数值。
ggplot(mtcars, aes(x=car_name, y=mpg_z, label=mpg_z)) + geom_point(stat='identity', aes(col=mpg_type), size=6) + scale_color_manual(name="Mileage", labels = c("Above Average", "Below Average"), values = c("above"="#00ba38", "below"="#f8766d")) + geom_text(color="white", size=2) + labs(title="Diverging Dot Plot", subtitle="Normalized mileage from 'mtcars': Dotplot") + ylim(-2.5, 2.5) + coord_flip() + theme_bw()"ggplot2怎么实现发散性正负图"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
因子
数据
处理
正负
内容
同时
数值
更多
知识
顺序
输出
实用
相似
美观
学有所成
接下来
信息
困境
图形
圈圈
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网高科技
上海卓越科技互联网
猪兼强互联网科技
互联网科技公司官网
互联网科技论文
上海喔噻互联网科技
国外互联网科技网站
哈尔滨新华互联网科技学院
开一家科技互联网公司需要多少钱
电子科技大学互联网创业大赛
互联网科技研发水平
互联网科技大赛获奖感言
北京市互联网新科技
陕西九四连强互联网科技有限公司
云南互联网科技学费
福仕德教育科技互联网
现代互联网科技公司
重庆科技产业互联网有哪些
互联网科技自媒体灵感
互联网科技企业文化
华中科技大学互联网
伴你行互联网科技有限公司
互联网科技大会案例
字节跳动和互联网科技
科技与互联网哪个更好
重庆威客帮互联网科技
苏州铭阳互联网科技有限公司
烟台灵鸽互联网科技有限公司
城市宝互联网科技有限公司
瑞安市蟠桃会互联网科技有限公司