Before and after the Turkish local elections held in March 2014, tactical voting has been discussed by the pundits in media. Especially, compromising (useful vote) where a person votes for a party that has a higher chance of defeating her least favorite party instead of voting for the candidate she prefers the most. Even the candidates of AKP mentioned a collaboration between the opposition parties to defeat AKP's candidates in big cities such as İstanbul and Ankara. Another discussion point was Sırrı Süreyya Önder's potential withdrawal from the İstanbul mayor race to fortify Mustafa Sarıgül's (CHP) position as the sole opponent of the incumbent mayor Kadir Topbaş (AKP).
I tried to visualize the tactical voting behavior using the share of votes scored by each political party at the district level in İstanbul. Underlying assumption is that a voter is likely to choose her highest ranked party (candidate) for the district (ilçe) mayor, but comprise for the büyükşehir (city) race. All our conclusion rely on this assumption.
Graph below shows the difference in the vote share between the büyükşehir and ilçe elections per party. First of all, we notice that HDP voters in most districts did not compromise. Secondly, Sırrı Süreyya Önder did not get a higher share than ilçe candidates showing that he did not steal votes from CHP following his increased popularity after the Gezi Parkı protests. Lastly, we see that MHP was the most negatively affected party by tactical voting. Though we can see that MHP voters comprised to both AKP and CHP.
Vote Share Difference between Büyükşehir and İlçe Mayor Elections in İstanbul
Affinity to a Party
As an additional analysis, I wanted to visualize the affinity of each district towards the major political parties, where distance is simply the vote share and a higher share indicates a closer tie. I actually wanted to include HDP as the fourth dimension; however, I could not figure out how to plot a tetrahedron in R. When/If I do, I will revise the graph. I decided to add HDP as the color layer. This works pretty nicely since a more common discussion involving HDP is crossing the 10% election threshold for the general elections in Turkey.
>ggtern(data=data,aes(CHP,AKP,MHP,col=HDP,label=ILCE))+geom_text(size=2.5)+theme(legend.position="bottom")+ggtitle("ISTANBUL ILCE BELEDIYE BASKANI OY ORANLARI")
Data input is a dataframe object as show below.
Finally, I used Inkscape to label the graph. It is a fairly straight forward tool to use, and there are tutorials on Youtube.