Migration patterns

ISB’s SRITNE (Srini Raju Centre for IT and the Networked Economy) is a research canter that focuses on the business and societal value of IT. Gramener collaborates with SRITNE to develop and promote visual analytics, and to help foster a culture of open data within the community.

As part of this collaboration, we jointly presented ‘Visualisation of Migration Patterns in India’ at the Bangalore Open Data Camp. Access to the source dataset for this analysis was provided by ISB and Visualisations were done primarily on the Gramener Visualisation Server. MS Excel and R were used for exploratory analysis. The aim of this exercise was to take an outside, analytics view of the Migration Patterns to explore alternate possibilities of representation and visualisation, rather than from the lens of a Demographics Analysis Expert.

The Indian NSSO (National Sample Survey Office) had conducted the 64th round survey on ‘Employment & Unemployment and Migration Particulars’during July ’07 to June ’08 covering 1,25,578 households and 5,72,254 persons.

Of this sample, ~30% were found to be migrants, i.e. those whose last usual place of residence (UPR) was different from the present place of enumeration. In this survey, the usual place of residence of a person was defined as a village/town where the person had stayed continuously for six months or more. Amongst the migrants, a majority were found to be moving within the state (85%) as opposed to those moving across states (15%). Women formed a sizeable majority of this migrant population.

Intra-state migration patterns


The map on the left has the intra-state migration pattern (excluding inter-state numbers) showing the absolute number of migrants moving within each state/UT. Green indicates higher migration and red is the opposite. Based on this map, the 5 most populous states in India account for the top 5 intra-state movements, except for Bihar which comes a close 6th. If we rescale the numbers by taking migrants as a percent of the state/UT’s survey size, as shown in the right map, the results change completely. The top 5 states with highest percent churn are Andhra Pradesh, Himachal Pradesh, Kerala, Gujarat and Andaman & Nicobar Islands.

Inter-state migration patterns


If we now look at the Inter-state migration pattern (excluding within-state movements) by plotting the Net Inflow of migrants into each state/UT (left-hand-side map), the states with highest net outflow of migrants are Uttar Pradesh and Bihar, while those with highest net inflow are Maharashtra and Delhi. If we rescale the numbers, as a percent of the state/UT’s survey sample, the story changes, yet again. All the Union Territories in India have the highest Net percent Inflow, with Chandigarh showing the highest value at 41%.

Inter-state migration Heat-map


In order to get a sense of exchange of migrants happening between the states, we plotted the numbers on a heat-map. The y-axis of the heatmap has ‘From-State’ while ‘To-State’ is on the x-axis. The height of each heat-map box is proportional to the net outflow from the contributor-state, while the width of each box is proportional to the net inflow into the recipient-state. The colour is representative of the number of people moving between the states – darker the box, more the number of people.

As can be seen, the top destinations for people leaving UP are Delhi, Maharashtra and Uttaranchal respectively. For Bihar and Rajasthan, the top destinations are highlighted accordingly. What is more interesting is the pattern of top destinations for each of the states. A clear trend is the consistent preference of people across regions to migrate into states with geographical proximity. The survey had also covered a set of international in-migrants, wherein Bangladesh the top contributing country has a sizeable proportion of its migrants moving to West Bengal.

Migration across Rural-Urban areas


When migration was viewed from the perspective of movement across Rural – Urban areas, a surprising trend found was the extent movement within Rural Areas – more than half of migration in India happens amongst the Rural regions. About 40% of migration is towards Urban areas. A contra-trend noticed here was for the Union Territories and North-Eastern States – over 70% of migration in these areas is towards the Urban regions, unlike the rest of India.

Reasons for migration


When an analysis of Reasons for Migration was done at the Country level, some key trends were observed. Women, who form a sizeable majority of the migrants primarily migrate on account of ‘Marriage’ and their typical age at marriage is between 15 and 24. For men, the key reason for migration is ‘Employment-related’ and this primarily happens in the age band of 18 to 40. Consequently, migration due to ‘Movement of Parent/Earning member’ forms another key reason. ‘Education’ is also found to be a driver of migration and this typically happens for men and women until the age of around 23 years.

When we looked at the Reasons for Migration vis-à-vis States, a few interesting patterns showed up. People in Tripura migrate mostly due to Forced Reasons/Disasters, whereas UP witnesses Marriage-related movement. Kerala and West Bengal witness migration because of Housing related reasons, whereas a lot of people in the scenic state of Himachal Pradesh migrate for post-retirement life.


It is evident from the above heatmap that a majority of the women who migrate for marriage, end up doing Domestic duties, while men who move for employment end up as Wage employees/labourers.


The survey sample had a good mix of people who had migrated over the years, dating as far back as the 1930s. When we analysed the pattern of evolution of migration reasons, interesting trends emerged. Until Independence, migration was subdued and was restricted only to the women getting married. Post-independence, migration numbers have steadily increased over the next 60 years. After 1970s, increasingly more people started moving for Employment-related reasons. This was also accompanied with migration of the dependent families. It has been only after the 1990s that people move in significantly larger numbers and for reasons such as Business, Education, Housing, Post-retirement, Healthcare – more inline with the Indian Economic Development story over the past 60 years!

Karnataka ground water quality

We took Karnataka’s ground water quality data from a 2004 Karnataka Rural Water Supply and Sanitation Agency (KRWSSA) report (via IndiaWaterPortal), and tried to see if there were any patterns.

The executive summary of the report shows the number of villages in each district affected by problems of excess nitrate, iron, fluoride or total dissolved salts. We plotted those on the district map.


The interesting pattern is that emerges is that the places that have excess nitrate (NO3) concentration are the ones that have excess iron (Fe) concentration as well. The places that have excess fluoride (F) concentration are the ones that have excess salts (TDS).


The correlation scatterplot alongside further demonstrates this point. There is a fairly good correlation between Fe and NO3, and between TDS and F. There’s little correlation across these groups however.

(From a glance at the scatterplots, though, it becomes immediately obvious that this is based on too few data points.)

We can also readily see that the bulk of the water quality issues are in interior Karnataka. The coastal areas are relatively fine.

Geographic visualisations are an extremely powerful way of inferring patterns when the underlying data is geographic in nature. At Gramener, we use our visualisation server to automatically create graphs such as these based on an underlying data source.

We have provided a sample of our tool at http://gramener.com/indiamap. You can enter your own data and see how it shows up on any district or state map. Happy mapping!

Visualising Indian Elections

When the Election Commission results for the 2011 assembly elections came out, we thought we’d take a look at the results for Tamil Nadu.

The easiest way to see geographic data is, of course, on a map. Since the results are announced constituency-wise, it makes logical sense to plot each constituency on the map.

However, map-based visualisations suffer from one problem: the area of a geographic region is not always proportional to its importance. In elections, each constituency equal weightage: one seat. But the areas can vary considerably. Chennai, for instance, is a tiny dot on the map, but yet is split into three different constituencies.

A better way is to take an approximation of the map. We can plot each constituency as a block, and position it roughly at its geographic location, and roughly preserve adjacency. This gives a reasonably good geographic picture, while showing relative importance accurately.

For example, here is a world map: the area is proportional to each country’s population.


We did the same for Tamil Nadu. Below is an interactive map that shows voter turnout. Hovering over each cell will show the number of voters that turned out in that constituency. Black shows higher votes, white shows fewer voters.

Voter turnout

Men turnout

Women turnout

The number of the registered voters ranges from 140,000 (Kilvelur) to 360,000 (Shozhinganallur). Each box represents one constituency, with a position approximating its geographic location. This is a reasonably good proxy for a constituency density map.

Now, let’s take a look at voter turnout.


Turnout% men

Turnout% women

The voter turnout was pretty high, at 78%. Not too different between the men (77.7%) and women (78.5%), but quite different across constituencies. Palacodu, Kulithalai and Veerapandi led the pack with turnouts of 87%, 89% and 89% while Chennai Harbour, Killiyoor and Colachal bottom at 64% each. The lowest turnouts are concentrated around Chennai, Coimbatore and Kanyakumari – interestingly these are the more affluent areas.

% votes: ADMK

% votes: DMDK

% votes: DMK

Clearly, ADMK has swept the elections. What’s interesting is that they won absolute majorities in a number of areas (highlighted by the darker shades of green), unlike DMK or MDMK, who mostly won simple majorities.

% margin: ADMK

% margin: DMDK

% margin: DMK

A number of ADMK victories were by a large margin, but so were some of the DMDK and DMK victories. AKT Raja of DMDK won Thirupurankundram with a 30% margin, for example. Former Chief Minister M. Karunanidhi (DMK) won with a comfortable 29% margin at Thiruvarur as well. Vijaykant (DMDK) managed an 18% margin at Rishivandiyam. It is interesting that 92% women voted at Rishivandiyam – significantly higher than anywhere else in the state.