I can achive Plotting multiple maps with ggmap which is also possible with faceting as described in Kale & Wickham (2013) R Journal paper. But I would like to plot a multiple series of maps that pan around particular, zoomed areas of the city. This is sort of achievable if I look at the city coordinates obtained with geocode() function and roughly figure out what I need to subtract or add from longitude/latitude on each side of pan the view. Such solution is far from ideal. Let me illustrate with an example (note: multiplot function used from Cookbook For R).
library(ggmap)
library(RgoogleMaps)
#getting Bristol lat/long
BRS <- geocode("Bristol, UK")
#get the first (central) map from the coordinates
BristolMapCenter <- ggmap(get_map(c(lon=BRS$lon, lat=BRS$lat), zoom = 15))
#get the second map panned to the right by adding approx. 0.015 to longitude
BristolMapRight <- ggmap(get_map(c(lon=BRS$lon+0.015, lat=BRS$lat),zoom = 15))
#multiplot function
multiplot(BristolMapCenter, BristolMapRight, cols=2)

As you can see this is far from ideal as there is overall (I don't want overlap, I want "lined up continuation"), if not to say clunky, especially if I want to get a larger panning of the surrounding areas (lets say 9-12 maps), do it for multiple cities, plot some data on the top of it, and still have enough time in my life to grab a pint on the sun. So I wonder if there is any fast, sleek and automatic way to get those panned maps based on specific central coordinates?
Starting with your code:
we can extract the absolute ranges covered by the map at this zoom level:
And then add multiples of this to your BRS coordinates.
These should line up nicely.
You can move in any orthogonal direction by integer multiples of
z15width, and things should continue to line up. And of course, you get a different width at a different zoom. You could write a script to calculate the width for many different zoom values and store that somewhere and reference it later.