Creating Twitter maps

Analyzing Social Media Data in Python

Alex Hanna

Computational Social Scientist

Introducing Basemap

Contour example in Basemap

  • Library for plotting two-dimensional maps
  • Built on top of matplotlib
  • Converts coordinates into map projections
Analyzing Social Media Data in Python

Beginning with Basemap

from mpl_toolkits.basemap 
    import Basemap

m = Basemap(projection='merc', llcrnrlat = -35.62, llcrnrlon = -17.29, urcrnrlat = 37.73, urcrnrlon = 51.39)
m.fillcontinents(color='white') m.drawcoastlines(color='gray') m.drawcountries(color='gray')

Basemap render of Africa

Analyzing Social Media Data in Python

Plotting points

africa = pd.read_csv('africa.csv')
longs  = africa['CapitalLongtiude']
lats   = africa['CapitalLatitude']

m = Basemap(...)
m.fillcontinents(color='white', zorder = 0) m.drawcoastlines(color='gray') m.drawcountries(color='gray')
m.scatter(longs.values, lats.values, latlon = True, alpha = 0.7)

African capitals in Basemap

Analyzing Social Media Data in Python

Using color

africa = pd.read_csv('africa.csv')
longs  = africa['CapitalLongtiude']
lats   = africa['CapitalLatitude']
arabic = africa['Arabic']

m = Basemap(...)
m.fillcontinents(color='white', 
    zorder = 0)
m.drawcoastlines(color='gray')
m.drawcountries(color='gray')

m.scatter(longs.values, lats.values, latlon = True, c = arabic.values, cmap = 'Paired', alpha = 1)

African capitals, Arabic-speaking

Analyzing Social Media Data in Python

Let's practice!

Analyzing Social Media Data in Python

Preparing Video For Download...