9 Popular Ways To Perform Data Visualization in Python - Analytics Vidhya
9 Popular Ways To Perform Data Visualization in Python - Analytics Vidhya
9popularwaystoperformDataVisualizationinPython|AnalyticsVidhya
Introduction
Thebeautyofanartliesinthemessageitconveys.Attimes,realityisnotwhatweseeorperceive.
TheendlesseffortsfromthelikesofVinciandPicassohavetriedtobringpeopleclosertothereality
usingtheirexceptionalartworksonacertaintopic/matter.
Datascientistsarenolessthanartists.Theymakepaintingsinformofdigitalvisualization(ofdata)
withamotiveofmanifestingthehiddenpatterns/insightsinit.Itisevenmoreinterestingtoknow
that,thetendencyofhumanperception,cognitionandcommunicationincreaseswhenhe/shegets
exposedtovisualizedformofanycontent/data.
There are multiple tools for performing visualization in data science. In this article, I have
demonstratedvariousvisualizationchartsusingPython.
WhatdoesittaketomakevisualizationinPython?
Notmuch!Pythonhasalreadymadeiteasyforyouwithtwoexclusivelibrariesforvisualization,
commonlyknownasmatplotlibandseaborn.Heardofthem?
Matplotlib: Python based plotting library offers matplotlib with a complete 2D support along with
limited 3D graphic support. It is useful in producing publication quality figures in interactive
environmentacrossplatforms.Itcanalsobeusedforanimationsaswell.Toknowmoreaboutthis
library,checkthislink.
Seaborn: Seaborn is a library for creating informative and attractive statistical graphics in python.
This library is based on matplotlib. Seaborn offers various features such as built in themes, color
palettes, functions and tools to visualize univariate, bivariate, linear regression, matrices of data,
statistical time series etc which lets us to build complex visualizations. To know more about this
library,checkthislink.
WhatarethedifferentvisualizationsIcanmake?
http://www.analyticsvidhya.com/blog/2015/05/datavisualizationpython/?utm_content=buffer4e100&utm_medium=social&utm_source=facebook.com&utm_cam... 1/7
8/6/2016
9popularwaystoperformDataVisualizationinPython|AnalyticsVidhya
Lastweek,AcomprehensiveguideonDataVisualizationwaspublishedtointroduceyoutothemost
commonlyusedvisualizationstechniques.Werecommendyoutoreferthatbeforeproceeding
further,incaseyouhavent.
Belowarethepythoncodeswiththeiroutput.Ihaveusedfollowingdatasettocreatethese
visualization:
ImportDataSet:
importmatplotlib.pyplotasplt
importpandasaspd
df=pd.read_excel("E:/First.xlsx","Sheet1")
Histogram:
fig=plt.figure()#Plotsinmatplotlibresidewithinafigureobject,useplt.figuretocreatenew
figure
#Createoneormoresubplotsusingadd_subplot,becauseyoucan'tcreateblankfigure
ax=fig.add_subplot(1,1,1)
#Variable
ax.hist(df['Age'],bins=7)#Hereyoucanplaywithnumberofbins
http://www.analyticsvidhya.com/blog/2015/05/datavisualizationpython/?utm_content=buffer4e100&utm_medium=social&utm_source=facebook.com&utm_cam... 2/7
8/6/2016
9popularwaystoperformDataVisualizationinPython|AnalyticsVidhya
LabelsandTit
plt.title('Agedistribution')
plt.xlabel('Age')
plt.ylabel('#Employee')
plt.show()
BoxPlot
importmatplotlib.pyplotasplt
importpandasaspd
fig=plt.figure()
ax=fig.add_subplot(1,1,1)
#Variable
ax.boxplot(df['Age'])
plt.show()
http://www.analyticsvidhya.com/blog/2015/05/datavisualizationpython/?utm_content=buffer4e100&utm_medium=social&utm_source=facebook.com&utm_cam... 3/7
8/6/2016
9popularwaystoperformDataVisualizationinPython|AnalyticsVidhya
ViolinPlot
importseabornassns
sns.violinplot(df['Age'],df['Gender'])#VariablePlot
sns.despine()
BarChart
http://www.analyticsvidhya.com/blog/2015/05/datavisualizationpython/?utm_content=buffer4e100&utm_medium=social&utm_source=facebook.com&utm_cam... 4/7
8/6/2016
9popularwaystoperformDataVisualizationinPython|AnalyticsVidhya
var=df.groupby('Gender').Sales.sum()#groupedsumofsalesatGenderlevel
fig=plt.figure()
ax1=fig.add_subplot(1,1,1)
ax1.set_xlabel('Gender')
ax1.set_ylabel('SumofSales')
ax1.set_title("GenderwiseSumofSales")
var.plot(kind='bar')
Youcanreadmoreaboutpandasgroupbyhereandfordataframe.Forplotreferthislink.
LineChart
var=df.groupby('BMI').Sales.sum()
fig=plt.figure()
ax1=fig.add_subplot(1,1,1)
ax1.set_xlabel('BMI')
ax1.set_ylabel('SumofSales')
ax1.set_title("BMIwiseSumofSales")
var.plot(kind='line')
http://www.analyticsvidhya.com/blog/2015/05/datavisualizationpython/?utm_content=buffer4e100&utm_medium=social&utm_source=facebook.com&utm_cam... 5/7
8/6/2016
9popularwaystoperformDataVisualizationinPython|AnalyticsVidhya
StackedColumnChart
var=df.groupby(['BMI','Gender']).Sales.sum()
var.unstack().plot(kind='bar',stacked=True,color=['red','blue'],grid=False)
Dataframe.unstack()returnsaDataFramehavinganewlevelofcolumnlabelswhoseinnermost
levelconsistsofthepivotedindexlabels.Readmoreaboutdataframe.unstackhere.
ScatterPlot
http://www.analyticsvidhya.com/blog/2015/05/datavisualizationpython/?utm_content=buffer4e100&utm_medium=social&utm_source=facebook.com&utm_cam... 6/7
8/6/2016
9popularwaystoperformDataVisualizationinPython|AnalyticsVidhya
ScatterPlot
fig=plt.figure()
ax=fig.add_subplot(1,1,1)
ax.scatter(df['Age'],df['Sales'])#Youcanalsoaddmorevariablesheretorepresentcolorandsi
ze.
plt.show()
BubblePlot
fig=plt.figure()
ax=fig.add_subplot(1,1,1)
ax.scatter(df['Age'],df['Sales'],s=df['Income'])#Addedthirdvariableincomeassizeofthebu
bble
plt.show()
http://www.analyticsvidhya.com/blog/2015/05/datavisualizationpython/?utm_content=buffer4e100&utm_medium=social&utm_source=facebook.com&utm_cam... 7/7