Comments (6)
Should be fixed in the label refactoring in #5879.
OTOH, some people might expect the global aesthetics to overrule local aesthetics.
devtools::load_all("~/packages/ggplot2")
#> ℹ Loading ggplot2
palmerpenguins::penguins |>
ggplot(aes(x = flipper_length_mm, y = body_mass_g, colour = sex)) +
geom_point(aes(x = bill_depth_mm, y = bill_length_mm, colour = species))
#> Warning: Removed 2 rows containing missing values or values outside the scale range
#> (`geom_point()`).
Created on 2024-05-20 with reprex v2.1.0
from ggplot2.
OTOH, some people might expect the global aesthetics to overrule local aesthetics.
Sorry for a late question. I, more specifically, the gghighlight package, expected it. So, what's the recommendation for those people? Setting the label
attribute?
devtools::load_all("~/GitHub/ggplot2/")
#> ℹ Loading ggplot2
library(gghighlight)
# The original labels should be kept
ggplot(mtcars, aes(wt, mpg, colour = factor(cyl))) +
geom_point() +
gghighlight(100 < disp, disp <= 300, use_group_by = FALSE)
Created on 2024-07-17 with reprex v2.1.0
from ggplot2.
That would work if you use plain symbols in aes()
, but you could also use any other label setting mechanism like using labs()
or scale_{x/y/colour}_*(name)
.
from ggplot2.
That would work if you use plain symbols in
aes()
Ah, okay, it's not necessarily a plain symbol, so it seems I need to use labs()
. I wanted to avoid constructing the labels by myself, but I think I can make it. Thanks for the hint!
from ggplot2.
Sorry if I have been unclear, I meant 'a NSE column name' when I said 'plain symbol'.
Given that the mappings give column names, label-attributes should work.
library(gghighlight)
#> Loading required package: ggplot2
# The original labels should be kept
p <- ggplot(mtcars, aes(wt, mpg, colour = factor(cyl))) +
geom_point() +
gghighlight(100 < disp, disp <= 300, use_group_by = FALSE)
p$layers[[1]]$mapping
#> Aesthetic mapping:
#> * `x` -> `highlight..........1`
#> * `y` -> `highlight..........2`
#> * `colour` -> `highlight..........3`
#> * `fill` -> NULL
#> * `group` -> `highlight..........group`
colnames(p$layers[[1]]$data)
#> [1] "highlight..........1" "highlight..........2"
#> [3] "highlight..........3" "highlight..........group"
Created on 2024-07-17 with reprex v2.1.1
from ggplot2.
Ah, I understand what you wrote. I was thinking if I can set the label
attributes of the plot data, but, in this code for example, colour
is an expression, not a variable. But, modifying a layer might be an option, thanks for the suggestion.
library(gghighlight)
#> Loading required package: ggplot2
p <- ggplot(mtcars, aes(wt, mpg, colour = factor(cyl))) +
geom_point() +
gghighlight(100 < disp, disp <= 300, use_group_by = FALSE)
p$mapping
#> Aesthetic mapping:
#> * `x` -> `wt`
#> * `y` -> `mpg`
#> * `colour` -> `factor(cyl)`
Created on 2024-07-17 with reprex v2.1.0
from ggplot2.
Related Issues (20)
- `n.breaks` only supported when `breaks = waiver()` HOT 1
- Could a function to reset all geom defaults back to the initial defaults be provided? HOT 3
- Suggestion to change the default line end of axis lines in theme_classic HOT 10
- geom_line() render thread runs at 100%, apparently indefinitely, on wide-ranged input HOT 1
- Bug where ggplot2.discrete.colour options set and then colour scale with limits applied HOT 2
- ggsave pdf issue HOT 1
- Review dependencies HOT 4
- `summary()` is verbose about facet
- Rendering book fails at scales-other.qmd HOT 7
- ggplot object gets updated without formal assignment HOT 2
- `position_dodge` not working well with `preserve = "single"` and `geom_text` (or `geom_point`) HOT 1
- `drop = FALSE` does not maintain unused factors HOT 1
- Could polygons be drawn, so that the outline does Not exceed the value it represents? HOT 4
- Feature request: `geom_elbow` HOT 4
- In `facet_grid`, could the `switch` argument be deprecated, and replaced with a `strip.position` argument? HOT 2
- Could `position_dodge` have a `padding` argument?
- is it possible to let `ggsave` utilize `ggplot_build` method? HOT 7
- Default label is ignored when a mapping is overwritten by a parameter HOT 1
- scale_color_stepsn() will not accept expression vector for scale labels HOT 3
- Should `alpha` in geoms that have polygons and points only affect the interior of polygons? HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ggplot2.