Load the data from Table 12 (Fine Data).

Table12 <- read.csv("https://sullystats.github.io/Statistics6e/Data/Chapter2/Table12.csv")
head(Table12,n=5)
##     Fine
## 1 211.09
## 2 105.00
## 3 227.59
## 4 105.23
## 5 147.70

Install Mosaic, if necessary.

install.packages("mosaic")

Use the gf_freqpoly function. Recall, binwidth sets the class width and boundary determines the lower class limit of the first class.

library(mosaic)
gf_freqpoly(~Fine,data=Table12,binwidth=25,boundary=50,title="Parking and Camera Fines in New York City")