r - 如何调整ggplot图表中网格线的可见性
问题描述
下面的代码创建了一个散点图,并在背景中使用了带有网格线的 theme_bw -
data = mtcars
data %>%
select(mpg, disp) %>%
ggplot(aes(disp, mpg))+
geom_point(size = 3)+
theme_bw()
我还想在图表上包含一些垂直和水平线。但是,对于当前的网格线,它看起来有点忙。有没有办法进一步降低网格线的可见性。我不想完全删除它们。
解决方案
这可以通过切换到较浅的颜色或通过降低用于网格线的颜色的不透明度来实现,这两者都可以通过主题选项来实现panel.grid
。下面我展示第二种方法。不幸的是element_line
,没有alpha
设置不透明度的参数,但您可以通过十六进制颜色代码进行调整:
我使用具有 rgb 值(235、235、235)的默认网格线颜色“grey92”。
为了设置不透明度,我使用
rgb()
它作为第四个参数,将不透明度或 alpha 减少到 100 的值:
library(ggplot2)
library(dplyr)
data = mtcars
# Reduce the opacity of the grid lines: Default is 255
col_grid <- rgb(235, 235, 235, 100, maxColorValue = 255)
data %>%
select(mpg, disp) %>%
ggplot(aes(disp, mpg))+
geom_point(size = 3)+
theme_bw() +
theme(panel.grid = element_line(color = col_grid))
推荐阅读
- typescript - 元素在转换中隐式具有任何类型
- javascript - 如何使用 Ignite Bowser 2 Boilerplate 在 React Native 中点击/使用帖子并获取 api。(Mobx 状态树,输入脚本)
- sql-server - Access ADO 中的 GO 语句
- php - PHP 变量转换为 PayPal JavaScript
- django - “Album.singer”必须是“Singer”实例
- java - 无法加载 GLPK for Java 的动态链接库
- connectycube - 获取用户会话令牌时意外签名
- git - Git-获取第一次添加头文件的所有提交
- elasticsearch - 如何获取相同键中具有最高 _score 的文档?
- sql - SQL - ORA-00911 - 尝试插入记录时字符无效