Issue of clickdata in graph

Hi i having a issue regrading click data on graph…please the below code…

import dash

import dash_html_components as html

import dash_core_components as dcc

from dash.dependencies import Input, Output, State

import json

import pyspark

import numpy as np

import pandas as pd

from pyspark import SparkContext,SparkConf

from pyspark.sql import SparkSession

from pyspark.sql import Row

from pyspark.sql.functions import substring,length

from pyspark.sql.functions import col,when

from pyspark.sql.functions import to_timestamp

from pyspark.sql.functions import hour

from pyspark.sql import HiveContext

from pyspark.sql.functions import dayofmonth

from pyspark.sql.functions import month

import statistics

from datetime import datetime

from time import mktime

import plotly.plotly as py

import plotly.graph_objs as go

import time

global hive_context

global sc

external_stylesheets = [

"https://unpkg.com/tachyons@4.10.0/css/tachyons.min.css"]

app = dash.Dash(name, external_stylesheets=external_stylesheets)

app.layout =html.Div([

html.Div([dcc.Input(id='input-box', type='text',placeholder='yyy-mm-dd'),

          dcc.Input(id='input-box1', type='text',placeholder='start time HH:MM:SS'),

 dcc.Input(id='input-box2', type='text',placeholder='end time HH:MM:SS')]),

html.Div([html.Button('Submit', id='button')],className="db center mv4 ph2 pv1"),

dcc.Loading(html.Div(id='output-container-button',),type='graph', fullscreen=False)

])

def start1():

conf=SparkConf().setAppName(“pyspark”).set(“spark.scheduler.mode”,“FAIR”)

#conf=conf.set(“spark.scheduler.mode”,“FAIR”)

#conf.set(“spark.scheduler.allocation.file”,"/home/devloper/spark/conf/fair.xml")

global sc

sc=SparkContext(conf=conf)

#sc.setLocalProperty(“spark.scheduler.pool”,“production”)

global hive_context

hive_context=HiveContext(sc)

@app.callback(

dash.dependencies.Output('output-container-button','children'),

[dash.dependencies.Input('button', 'n_clicks')],

[dash.dependencies.State('input-box', 'value'),

dash.dependencies.State('input-box1', 'value'),dash.dependencies.State('input-box2', 'value')])

def update_output(n_clicks,value,value1,value2):

print(value)

if value!=None and value1!=None and value2!=None:

value=str(value)

value1=str(value1)

value2=str(value2)

starttime=value+’ '+value1

endtime=value+’ '+value2

start1()

dd1=hive_context.sql(“select sourceaddress,count(sourceaddress) as src,hour(eventtime) as ho from default.fullandfinal where eventtime between ‘%s’ and ‘%s’ group by sourceaddress,hour(eventtime) order by sourceaddress,ho” %(starttime,endtime))

dd2=dd1.toPandas()

sc.stop()

dd3=dd2.pivot(index=‘sourceaddress’,columns=‘ho’,values=‘src’).fillna(0)

dd4=dd3.apply(pd.Series.describe,axis=1)

dd4[‘IRQ’]=dd4[‘75%’].sub(dd4[‘25%’])

dd4[‘LL’]=dd4[‘25%’]-(1.5*dd4[‘IRQ’])

dd4[‘UL’]=dd4[‘75%’]+(1.5*dd4[‘IRQ’])

dd5=dd4.reset_index()

dd5=dd5.set_index(‘sourceaddress’)

dd6=pd.merge(dd3,dd5,left_index=True,right_index=True)

dd7=dd6.iloc[:,0:-11]

m1=dd7.gt(dd6[‘LL’],axis=0)

m2=dd7.lt(dd6[‘UL’],axis=0)

dd6[‘Result’] = dd7.mask(m1 & m2).apply(lambda x: x.dropna().astype(int).tolist(), axis=1)

import numpy as np

l = lambda x: sum([np.std([x[‘50%’], i], ddof=1) for i in x[‘Result’]])

dd6[‘std1’] = dd6.apply(l, 1)

dd7=dd6.sort_values([‘std1’],ascending=False)

dd8=dd7.iloc[:,0:-13].head(10)

d1=dd8[:1].values.flatten()

d2=dd8[1:2].values.flatten()

d3=dd8[2:3].values.flatten()

d4=dd8[3:4].values.flatten()

d5=dd8[4:5].values.flatten()

d6=dd8[5:6].values.flatten()

d7=dd8[6:7].values.flatten()

d8=dd8[7:8].values.flatten()

d9=dd8[8:9].values.flatten()

d10=dd8[9:10].values.flatten()

t=dd8.index.values.tolist()

trace0 = go.Box(y=d1,name=t[0])

trace1 = go.Box(y=d2,name=t[1])

trace2 = go.Box(y=d3,name=t[2])

trace3 = go.Box(y=d4,name=t[3])

trace4 = go.Box(y=d5,name=t[4])

trace5 = go.Box(y=d6,name=t[5])

trace6 = go.Box(y=d7,name=t[6])

trace7 = go.Box(y=d8,name=t[7])

trace8 = go.Box(y=d9,name=t[8])

trace9 = go.Box(y=d10,name=t[9])

    data=[trace0,trace1,trace2,trace3,trace4,trace5,trace6,trace7,trace8,trace9]

print(data)

return dcc.Graph(id=‘xy’,figure={‘data’:data,‘layout’:go.Layout(title=‘Outlier-Graph’)})

if name == ‘main’:

app.run_server(debug=True)