This article describes how to create an **interactive scatter plot in R** using the *highchart* R package.

Contents:

## Loading required R packages

`library(highcharter) `

## Data preparation

Demo dataset: `mtcars`

. The variable `cyl`

is used as grouping variable.

```
# Load data
data("mtcars")
df <- mtcars
# Convert cyl as a grouping variable
df$cyl <- as.factor(df$cyl)
# Inspect the data
head(df[, c("wt", "mpg", "cyl", "qsec")], 4)
```

```
## wt mpg cyl qsec
## Mazda RX4 2.62 21.0 6 16.5
## Mazda RX4 Wag 2.88 21.0 6 17.0
## Datsun 710 2.32 22.8 4 18.6
## Hornet 4 Drive 3.21 21.4 6 19.4
```

## Basic scatter plots

`hc <- df %>% hchart('scatter', hcaes(x = wt, y = mpg))`

`hc`

## Scatter plots with multiple groups

```
# Change color by groups
# Set custom colors
hc <- df %>%
hchart('scatter', hcaes(x = wt, y = mpg, group = cyl)) %>%
hc_colors(c("#00AFBB", "#E7B800", "#FC4E07"))
```

`hc`

## Add regression lines

```
# Fit regression model
library(dplyr)
library(broom)
model <- lm(mpg ~ wt, data = df)
fit <- augment(model) %>% arrange(wt)
# Visualization
hc <- df %>%
hchart('scatter', hcaes(x = wt, y = mpg, group = cyl)) %>%
hc_add_series(
fit, type = "line", hcaes(x = wt, y = .fitted),
name = "Fit", id = "fit"
)
```

`hc`

## Bubble chart

In a bubble chart, points `size`

is controlled by a continuous variable, here `qsec`

.

```
hc <- df %>%
hchart(
'scatter', hcaes(x = wt, y = mpg, size = qsec, group = cyl),
maxSize = "10%"
)
```

`hc`

## Color by a continuous variable

```
hc <- df %>%
hchart('scatter', hcaes(x = wt, y = mpg, color = mpg))
```

`hc`

## Recommended for you

This section contains best data science and self-development resources to help you on your path.

### Coursera - Online Courses and Specialization

#### Data science

- Course: Machine Learning: Master the Fundamentals by Standford
- Specialization: Data Science by Johns Hopkins University
- Specialization: Python for Everybody by University of Michigan
- Courses: Build Skills for a Top Job in any Industry by Coursera
- Specialization: Master Machine Learning Fundamentals by University of Washington
- Specialization: Statistics with R by Duke University
- Specialization: Software Development in R by Johns Hopkins University
- Specialization: Genomic Data Science by Johns Hopkins University

#### Popular Courses Launched in 2020

- Google IT Automation with Python by Google
- AI for Medicine by deeplearning.ai
- Epidemiology in Public Health Practice by Johns Hopkins University
- AWS Fundamentals by Amazon Web Services

#### Trending Courses

- The Science of Well-Being by Yale University
- Google IT Support Professional by Google
- Python for Everybody by University of Michigan
- IBM Data Science Professional Certificate by IBM
- Business Foundations by University of Pennsylvania
- Introduction to Psychology by Yale University
- Excel Skills for Business by Macquarie University
- Psychological First Aid by Johns Hopkins University
- Graphic Design by Cal Arts

### Books - Data Science

#### Our Books

- Practical Guide to Cluster Analysis in R by A. Kassambara (Datanovia)
- Practical Guide To Principal Component Methods in R by A. Kassambara (Datanovia)
- Machine Learning Essentials: Practical Guide in R by A. Kassambara (Datanovia)
- R Graphics Essentials for Great Data Visualization by A. Kassambara (Datanovia)
- GGPlot2 Essentials for Great Data Visualization in R by A. Kassambara (Datanovia)
- Network Analysis and Visualization in R by A. Kassambara (Datanovia)
- Practical Statistics in R for Comparing Groups: Numerical Variables by A. Kassambara (Datanovia)
- Inter-Rater Reliability Essentials: Practical Guide in R by A. Kassambara (Datanovia)

#### Others

- R for Data Science: Import, Tidy, Transform, Visualize, and Model Data by Hadley Wickham & Garrett Grolemund
- Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems by Aurelien Géron
- Practical Statistics for Data Scientists: 50 Essential Concepts by Peter Bruce & Andrew Bruce
- Hands-On Programming with R: Write Your Own Functions And Simulations by Garrett Grolemund & Hadley Wickham
- An Introduction to Statistical Learning: with Applications in R by Gareth James et al.
- Deep Learning with R by François Chollet & J.J. Allaire
- Deep Learning with Python by François Chollet

Version: Français

## No Comments