How to Create Plots with Plotly In Python

By | September 27, 2021
How to Create Plots with Plotly In Python

Plotly is one of the most powerful and interactive Python Data Visualization libraries, here interactive is the main keyword which distinct Plotly from other Python Data Visualization libraries.

In this Python tutorial, I will walk you through the different types of graphs that you can plot using the Python Plotly Library.

Vamware

When it comes to Data Science with Python we should always use the Jupyter Notebook to code, because it is specially designed for Data Science related work and Python Data Science libraries work very efficiently with Jupyter Notebook.

If Jupyter Notebook is not Installed in your System please check this article on How to Install Jupiter notebook for Python.

Install Required Libraries

For this tutorial, we will be using some of Python’s most popular Data Science libraries along with Plotly. So make sure that all those libraries are installed for your Python environment.

You can install all the below-mentioned libraries using the Python pip command on the terminal/Command prompt or directly use the Jupyter Notebook to install libraries.

plotly

pip install plotly

pandas

pip install pandas

numpy

pip install numpy

cufflinks (API connect Pandas Data frame with Plotly)

pip install cufflinks

Plotly Basic

Now launch your Jupyter notebook and start with importing the required modules.

import numpy as np
import pandas as pd
import plotly.express as px
import cufflinks as cf  #to plot pd data frame

%matplotlib inline
cf.go_offline()

Now let’s first create a random numpy array of 20 rows and 5 columns and then convert it into a Pandas DataFrame.

Then using the cufflinks API we can call the iplot() method on the DataFrame to plot the DataFrame values on Plotly.

arr = np.random.randn(20,5) #random 2d array
df = pd.DataFrame(arr, columns=['a', 'b','c','d','e']) #data frame
df.iplot() #plot plotly on data frame

When you execute it on the Jupyter notebook you will see the similar output

As you can see that Plotly give more option than the standard Python matplotlib library and its graph are more interactive.

Plot Line Graph with Plotly

Now let’s plot a line Graph with Plotly.

We will start with importing the required libraries.

import plotly.express as px

Now we require a data set on which we can Plot the graph, luckily the Plotly library comes with some built-in custom data sets for example purposes, you can check out all the data set from the Plotly Data Package official website.

Here we will be using the Medel for Olympic Short Track Speed Skating data set provided by Plotly as data.medals_wide()

#https://plotly.com/python-api-reference/generated/plotly.data.html#plotly.data.medals_wide
df_medals = px.data.medals_wide() #
#print(df_medals) #to see the data frame

#plot line graph
px.line(df_medals, x='nation', y='gold', title="Olympic Medals")

Execute

Plot Bar Charts with Plotly

Bar charts can be used to visualize the result which varies in the time interval. To plot a bar chart using Ploty we use the Plotly bar()method.

Here we will be Plotting the population bar graph for India. For the data set, we will be using the Plotly data package gapminder()function. Which will return a data frame of countries with their population, life experience, GDP, etc, details.

But here we are only interested in a specific country “India” so we will be performing a query on the data set and retrieve only India detail.

To perform the query on the data set we use the query() method.

import plotly.express as px

df_world = px.data.gapminder()
df_india = df_world.query("country =='India'")

#plot bar chart
px.bar(df_india, x='year', y='pop')

Execute

Plot Scatters Plot with Plotly

Scatter Plot is a graphical dot values representation for two or more than two variables. To plot the scatter plot in Plotly we use the Plotly scatter() method.

For this tutorial, we will use the Plotly Data Package tips()data set and plot a graph for tips paid by the men and women on Total bill paid.

import plotly.express as px
df_tips = px.data.tips()

#plot scatter plot
px.scatter(df_tips, x="total_bill", y='tip', color='sex')

Execute

Plot Pie Charts with Plotly

The pie chart is represented like a circular piece where every variable is defined as a slice from the piece.

Pie charts come very useful when we want to show the individual part or proportion occupied by every variable.

To plot a Pie Chart in Plotly we use the pie()method.

In the example below, we will be plotting a pie chart represent the population of the top 7 countries of Asia in 2002.

import plotly.express as px

asia_df = px.data.gapminder().query("year== '2002'").query("continent=='Asia'")

#Asia population pie chart for 7 counties
px.pie(asia_df[:7], values="pop", names="country", title="Asia Population in 2002")

Execute

Plot Histogram with Plotly

Histogram plots are similar looking to the bar plots, but the histogram is used to visualize the data distribution.

With the histogram, we can easily estimate the major surge of values. For the example, below we will create two random arrays of 7000 values representing dice numbers between 1 to 6 and sum them. And with a histogram, we will see which number is occurred most of the time.

To plot a Histogram in Plotly we use the Plotly histogram() method.

import numpy as np

dice_roll_1 = np.random.randint(1, 7, 7000)
dice_roll_2 = np.random.randint(1, 7, 7000)
dice_sum = dice_roll_1 + dice_roll_2

#plot histogram
px.histogram(dice_sum, nbins = 6, labels={'value':"Dice Roll"}, title="Roll Dice 7000 times")

Execute:

Conclusion

This tutorial is all about Plotly basic, and how to plot basic plots using the Python Plotly library. The Python Plotly library is capable of doing more stuff we will recommend you to go through Plotly official documentation where they have provided the best tutorials and exexamples to get started with Plotly.

People are also reading: 

Leave a Reply

Your email address will not be published. Required fields are marked *