Sometimes you might wonder how to remove the border around dots in ggplot2, but all you have to do is change the marker shape in the R plot. When creating a plot in R that contains markers, it is possible to adjust the color, transparency, and also shape.
Look at the marker shapes in R
Here is a way to quickly overlook all the possible point shapes in R.
ggpubr::show_point_shapes()
If you want to look at different colors for those shapes or compare different formatting options, you can double-click on the function show_point_shapes and modify that code. Here is how it looks.
require(ggplot2) require(ggpubr) d = data.frame(p = c(0:25)) p <- ggplot() + scale_y_continuous(name = "") + scale_x_continuous(name = "") + scale_shape_identity() + geom_point(data = d, mapping = aes(x = p%%6, y = p%/%6, shape = p), size = 6, alpha = 0.4, stroke = 1.5, color = "turquoise2", fill = "sienna2") + geom_text(data = d, mapping = aes(x = p%%6, y = p%/%6 + 0.25, label = p), size = 4) + scale_y_reverse() + theme_dark() + theme(axis.title = element_blank()) ggpar(p, ticks = FALSE, tickslab = FALSE, main = "Point shapes available in R")
In this way, you might see more clearly that in the scenario when you want to get a transparent point without a border, the best option is number 16.
Change the marker shape in the ggplot2
Here is an example with a scatter plot. By default, the data point contains a tiny border that might not be necessary.
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) + geom_point(size = 3, alpha = 0.5) + scale_color_brewer(palette = "Dark2") + theme_minimal()
The shape of the point without a border in the ggplot2 scatter plot looks like this. You can get that by adjusting the shape argument.
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) + geom_point(size = 3, alpha = 0.5, shape = 16) + scale_color_brewer(palette = "Dark2") + theme_minimal()
The ggplot2 might contain a wide variety of symbols that you can copy and paste inside that argument. For example, here is the R scatter plot with a data point in the shape of a flower.
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width, color = Species)) + geom_point(size = 8, alpha = 0.5, shape = "✿") + scale_color_brewer(palette = "Dark2") + theme_minimal()
Change the marker shape in the base R
To change how the shape of the data point looks in the plot in the base R, try to use the pch parameter.
plot( x = iris$Sepal.Length, y = iris$Sepal.Width, pch = 21, cex = 1.5, lwd = 2, col = "sky blue", bg = "light gray", frame.plot = FALSE )
Change the data point shapes in the R plotly
If you want to change the data point shape in the R plotly and you are good at ggplot2, try to use the ggplotly function.
Otherwise, here is how to change marker shape in plotly by using symbol argument.
require(plotly) plot_ly( iris, x = ~ Sepal.Length, y = ~ Sepal.Width, type = "scatter", mode = "markers", marker = list( color = 'LightSkyBlue', size = 20, symbol = 22, line = list(color = 'MediumPurple', width = 2) ) )
You can read more about the plotly marker symbols here.
Thank you for reading this post and please take a look at other posts from this blog about data visualization or other stuff. For example, how to save R plots or other results temporarily or convert to WebP format.
Leave a Reply