hamith / Data vizuvalation project / region sale report 2010 to 2017.py
region sale report 2010 to 2017.py
Raw
import pandas as pd
import plotly.express as px
import plotly.graph_objs as go
import plotly.io as pio


pio.templates.default = 'plotly_white'

data = pd.read_excel("product1.xlsx")
data.head()

region = pd.DataFrame(data.groupby(['Region','Order_Year','Sales Channel'], as_index=False)[['Total Profit','Total Revenue','Total Cost']].sum())
print(region.head(5))

asia = region[region['Region']== "Asia"]
coun =asia[asia['Sales Channel']=="Online"]
coun1 =asia[asia['Sales Channel']=="Offline"]
print(coun)
print(coun1)

aus = region[region['Region']== "Australia and Oceania"]
coun2 =aus[aus['Sales Channel']=="Online"]
coun3 =aus[aus['Sales Channel']=="Offline"]
print(coun2)
print(coun3)

america = region[region['Region']== "Central America and the Caribbean"]
coun4 =america[america['Sales Channel']=="Online"]
coun5 =america[america['Sales Channel']=="Offline"]
print(coun4)
print(coun5)

europe = region[region['Region']== "Europe"]
coun6 =europe[europe['Sales Channel']=="Online"]
coun7 =europe[europe['Sales Channel']=="Offline"]
print(coun6)
print(coun7)

middleeast = region[region['Region']== "Middle East and North Africa"]
coun8 =middleeast[middleeast['Sales Channel']=="Online"]
coun9 =middleeast[middleeast['Sales Channel']=="Offline"]
print(coun8)
print(coun9)

north = region[region['Region']== "North America"]
coun10 =north[north['Sales Channel']=="Online"]
coun11 =north[north['Sales Channel']=="Offline"]
print(coun10)
print(coun11)

sub = region[region['Region']== "Sub-Saharan Africa"]
coun12 =sub[sub['Sales Channel']=="Online"]
coun13 =sub[sub['Sales Channel']=="Offline"]
print(coun12)
print(coun13)

fig = go.Figure()
fig.add_trace(go.Line(
    x=coun['Order_Year'],
    y=coun['Total Profit'],
    name="Asia - Online",
    marker_color='red'
))

fig.add_trace(go.Line(
    x=coun2['Order_Year'],
    y=coun2['Total Profit'],
    name="Australia and Oceania - Online",
    marker_color='blue'

))

fig.add_trace(go.Line(
    x=coun4['Order_Year'],
    y=coun4['Total Profit'],
    name="Central America and the Caribbean - Online",
    marker_color='green'
))

fig.add_trace(go.Line(
    x=coun6['Order_Year'],
    y=coun6['Total Profit'],
    name="Europe - Online",
    marker_color='black'
))

fig.add_trace(go.Line(
    x=coun8['Order_Year'],
    y=coun8['Total Profit'],
    name="Middle East and North Africa - Online",
    marker_color='orange'
))

fig.add_trace(go.Line(
    x=coun10['Order_Year'],
    y=coun10['Total Profit'],
    name="North America - Online",
    marker_color='pink'
))

fig.add_trace(go.Line(
    x=coun12['Order_Year'],
    y=coun12['Total Profit'],
    name="Sub-Saharan Africa - Online",
    marker_color='violet'
))

fig.update_layout(title_text="2010 to 2017 Region wise total profit in online sale", barmode='group')
fig.show()

fig = go.Figure()
fig.add_trace(go.Scatter(
    x=coun1['Order_Year'],
    y=coun1['Total Profit'],
    name="Asia - Offline",
    marker_color='red'
))

fig.add_trace(go.Scatter(
    x=coun3['Order_Year'],
    y=coun3['Total Profit'],
    name="Australia and Oceania - Offline",
    marker_color='blue'

))

fig.add_trace(go.Scatter(
    x=coun5['Order_Year'],
    y=coun5['Total Profit'],
    name="Central America and the Caribbean - Offline",
    marker_color='green'
))

fig.add_trace(go.Scatter(
    x=coun7['Order_Year'],
    y=coun7['Total Profit'],
    name="Europe - Offline",
    marker_color='black'
))

fig.add_trace(go.Scatter(
    x=coun9['Order_Year'],
    y=coun9['Total Profit'],
    name="Middle East and North Africa - Offline",
    marker_color='orange'
))

fig.add_trace(go.Scatter(
    x=coun11['Order_Year'],
    y=coun12['Total Profit'],
    name="North America - Offline",
    marker_color='pink'
))

fig.add_trace(go.Scatter(
    x=coun13['Order_Year'],
    y=coun13['Total Profit'],
    name="Sub-Saharan Africa - Ofline",
    marker_color='violet'
))

fig.update_layout(title_text="2010 to 2017 Region wise total profit in offline sale", barmode='group')
fig.show()