import pandas as pd
from collections import Counter
from datetime import datetime, timedelta
from bokeh.charts import Bar, output_file, show
from bokeh.models.layouts import Column
import numpy as np
try:
data = pd.read_csv('new.csv')
scan_col = Counter(data['Scan'])
values = list()
keys = list()
for s in scan_col.keys():
scan_time_total = datetime.strptime("00:00:00","%H:%M:%S")
scan_time_total = timedelta(hours=scan_time_total.hour, minutes=scan_time_total.minute, seconds=scan_time_total.second)
for i,v in data['Scan'].iteritems():
if s == v:
temp = data['Time'][i]
temp = datetime.strptime(data['Time'][i],"%H:%M:%S")
temp = timedelta(hours=temp.hour, minutes=temp.minute, seconds=temp.second)
scan_time_total += temp
values.append(scan_time_total.total_seconds()/60)
keys.append(s)
output_file("bar.html")
scan_dict = {'values':values, 'names':keys}
df = pd.DataFrame(scan_dict)
p = Bar(df, 'names', values='values', title="Scan vs Time", plot_width=1234, legend=False)
p.xaxis.axis_label = "Scans"
p.yaxis.axis_label = "Total Time (minutes)"
values2 = list()
keys2 = list()
for s in scan_col.keys():
keys2.append(s)
for s in scan_col.values():
values2.append(s)
scan_dict2 = {'values':values2, 'names':keys2}
df2 = pd.DataFrame(scan_dict2)
p2 = Bar(df2, 'names', values='values', title="Scan vs Count", plot_width=1234, legend=False)
p2.xaxis.axis_label = "Scans"
p2.yaxis.axis_label = "Count"
show(Column(p,p2))
except Exception as e:
print(e)
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.