A simple exercise to familiarize myself with GIS spatial data and Leaflet.

library(leaflet)
library(magrittr)
library(rgdal)
library(sp)

Data: City of San Antonio Public Database http://www.sanantonio.gov/GIS/GISData

#San Antonio Trail Data
trails <- readOGR(dsn=".",layer="ParkTrails")
## OGR data source with driver: ESRI Shapefile 
## Source: ".", layer: "ParkTrails"
## with 2910 features
## It has 6 fields
heads <- readOGR(dsn=".",layer="ParkTrailheads")
## OGR data source with driver: ESRI Shapefile 
## Source: ".", layer: "ParkTrailheads"
## with 69 features
## It has 1 fields
#GIS projection that does not cooperate with leaflet
proj4string(trails)
## [1] "+proj=lcc +lat_1=28.38333333333333 +lat_2=30.28333333333333 +lat_0=27.83333333333333 +lon_0=-99 +x_0=600000 +y_0=3999999.999999999 +datum=NAD83 +units=us-ft +no_defs +ellps=GRS80 +towgs84=0,0,0"
proj4string(heads)
## [1] "+proj=lcc +lat_1=28.38333333333333 +lat_2=30.28333333333333 +lat_0=27.83333333333333 +lon_0=-99 +x_0=600000 +y_0=3999999.999999999 +datum=NAD83 +units=us-ft +no_defs +ellps=GRS80 +towgs84=0,0,0"
#Changes the projection to match leaflet lng/lat
trails <- spTransform(trails,CRS("+proj=longlat +datum=WGS84 +no_defs"))
heads <- spTransform(heads,CRS("+proj=longlat +datum=WGS84 +no_defs"))
m <- leaflet() %>% addTiles() %>% setView(-98.4936,29.4241,zoom=10) %>% 
  addPolylines(data=trails,color="darkblue",weight = 2,smoothFactor = .5) %>% 
    addMarkers(data=heads,popup = heads$Name)
m