05/11/2018 graph-stats.py 1 #!/usr/bin/env python
|
|
- Gerard Skinner
- 5 years ago
- Views:
Transcription
1 05/11/2018 graph-stats.py 1 #!/usr/bin/env python # 10/2018, C. Cervini, dbi-services; import sys import getopt from datetime import datetime import json import DctmAPI def Usage(): print(""" Usage: Connects as dmadmin/xxxx to a local repository and generates an HTML page containing the plots of several DQL queries result; Usage:./graph-stats.py -h --help -d --docbase <docbase>,<docbase [-o -- output_file <output_file>] <docbase> can be one repository or a comma-separated list of repositories; if <output_file> is omitted, the html page is output to./graphs/<docbase>-$(date +"%Y%m%d-%H%M%S").html; <output_file> can be "stdout", which is useful for CGI programming; Example:./graph-stats.py -d dmtest,mail_archive,doc_engineering will query the docbases dmtest, mail_archive and doc_engineering and output the graphs to the files <docbase>-$(date +"%Y%m%d-%H%M%S").html, one file per docbase;./graph-stats.py -d mail_archive,doc_engineering -o all_docbase_current_status will query the docbases mail_archive and doc_engineering and output all the graphs to the unique file all_docbase_current_status;./graph-stats.py -d mail-archive will query docbase mail-archive and output the graphs to the file mail-archive-$(date +"%Y%m%d-%H%M%S").html;./graph-stats.py --docbase dmtest --output dmtest.html will query docbase dmtest and output the graphs to the file dmtest.html;./graph-stats.py -d dmtest --output stdout will query docbase dmtest and output the graphs to stdout; """) def Plot2HTML(div, graph_title, data, data_labels, blinegraph = False, mode = None): global html_output if None!= html_output: sys.stdout = open(html_output, "a") # start the html page; if "b" == mode: global server, page_title <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>''' + page_title + '''</title> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <script src=" + server + '''/plotly-latest.min.js"></script> </head> <body> <center><h3>''' + page_title + '''</h3></center> # append to the body of the html page; if len(data_labels) == 4: stack_labels = for point in data:
2 05/11/2018 graph-stats.py 2 stack_labels[point[data_labels[0]]] = 0 <div style="width:1500px;height:600px;"> <div id="''' + div + '-' + data_labels[2] + '''" style="width:50%; float:left;"></div> <div id="''' + div + '-' + data_labels[3] + '''" style="width:50%; float:left;"></div> </div> <script> var ctx = document.getelementbyid("''' + div + '-' + data_labels[2] + '''"); variables = "" for stack in stack_labels: x = [point[data_labels[1]] for i, point in enumerate(data) if point[data_labels[0]] == stack] y1 = [point[data_labels[2]] for i, point in enumerate(data) if point[data_labels[0]] == stack] variables += ("" if not variables else ", ") + "data_" + stack if blinegraph: vars()['data_' + stack] = 'name': stack, 'type': "scatter", 'mode': "lines", 'x': x, 'y': y1, ; else: vars()['data_' + stack] = 'name': stack, 'type': "bar", 'x': x, 'y': y1, 'width': 0.25, 'marker': #'color': '#009933', 'line': 'width': 1.0 ; print('data_' + stack + ' = ' + json.dumps(vars()['data_' + stack]) + ';') layout = 'title': '<b>' + graph_title + '<br>' + data_labels[2] + '</b>', 'legend': 'x': -.1, 'y': 1.2, 'font': 'size': 8, 'font': 'size': 12, 'width': 750, 'height': 600, 'xaxis': 'title': '<b>' + data_labels[1] + '</b>', 'titlefont': 'size': 10, 'tickangle': -45, 'tickfont': 'size': 8, 'showline': True, 'categoryorder': "category ascending", 'type': "category", 'yaxis': 'title': '<b>' + data_labels[2] + '</b>', 'titlefont': 'size': 10, 'showline': True,
3 05/11/2018 graph-stats.py 3 'tickfont': 'size': 8, 'showgrid': False if not blinegraph: layout.update('barmode': "stack", 'bargap': 0.15, 'bargroupgap': 0.5) interaction = 'responsive': True, 'scrollzoom': True, 'editable': True Plotly.newPlot(ctx, [''' + variables + '], ' + json.dumps(layout) + ',' + json.dumps(interaction) + ; for stack in stack_labels: x = [point[data_labels[1]] for i, point in enumerate(data) if point[data_labels[0]] == stack] y2 = [point[data_labels[3]] for i, point in enumerate(data) if point[data_labels[0]] == stack] if blinegraph: vars()['data_' + stack] = 'name': stack, 'type': "scatter", 'mode': "lines", 'x': x, 'y': y2 ; else: vars()['data_' + stack] = 'name': stack, 'type': "bar", 'x': x, 'y': y2, 'width': 0.25, 'marker': #'color': '#009933',*/ 'line': 'width': 1.0 ; print('data_' + stack + ' = ' + json.dumps(vars()['data_' + stack]) + ';') layout = 'title': '<b>' + graph_title + '<br>' + data_labels[3] + '</b>', 'legend': 'x': -.1, 'y': 1.2, 'font': 'size': 8, 'font': 'size': 12, 'width': 750, 'height': 600, 'xaxis': 'title': '<b>' + data_labels[1] + '</b>', 'titlefont': 'size': 10, 'tickangle': -45, 'tickfont': 'size': 8, 'showline': True, 'categoryorder': "category ascending", 'type': "category", 'yaxis': 'title': '<b>' + data_labels[3] + '</b>', 'titlefont': 'size': 10, 'showline': True,
4 05/11/2018 graph-stats.py 4 'tickfont': 'size': 8, 'showgrid': False if not blinegraph: layout.update('barmode': "stack", 'bargap': 0.15, 'bargroupgap': 0.5) interaction = 'responsive': True, 'scrollzoom': True, 'editable': True var ctx = document.getelementbyid("''' + div + '-' + data_labels[3] + '''"); Plotly.newPlot(ctx, [''' + variables + '],' + json.dumps(layout) + ''', ''' + json.dumps(interaction) + ; </script> elif len(data_labels) == 3: <div style="width:1200px;height:600px;"> <div id="''' + div + '''" style="width:75%; float:left;"></div> <div id="''' + div + '''-pie" style="width:25%; float:left;"></div> </div> <script> var ctx = document.getelementbyid("''' + div + '''"); traces = [] if not blinegraph: traces = [ 'name': data_labels[1], 'type': "bar", 'x': [point[data_labels[0]] for i, point in enumerate(data)], 'y': [point[data_labels[1]] for i, point in enumerate(data)], 'width': 0.25, 'marker': 'color': '#009933', 'line': 'width': 1.0,, # work around for bug "Grouped bar charts do not work with multiple Y axes"; # see # must be inserted here; # invisible second trace in the first group 'x': [point[data_labels[0]] for i, point in enumerate(data)], 'barmode': "overlay", 'y': [0], 'type': 'bar', 'hoverinfo': 'none', 'showlegend': False, # invisible first trace in the second group 'x': [point[data_labels[0]] for i, point in enumerate(data)], 'y': [0], 'type': 'bar', 'yaxis': 'y2', 'hoverinfo': 'none', 'showlegend': False, 'name': data_labels[2], 'type': "bar", 'x': [point[data_labels[0]] for i, point in enumerate(data)], 'y': [point[data_labels[2]] for i, point in enumerate(data)],
5 05/11/2018 graph-stats.py 5 ] else: traces = [ layout = ], 'width': 0.25, 'yaxis': "y2", 'marker': 'color': '#4e6bed', 'line': 'width': 1.0 'name': data_labels[1], 'type': "scatter", 'mode': "lines", 'x': [point[data_labels[0]] for i, point in enumerate(data)], 'y': [point[data_labels[1]] for i, point in enumerate(data)], 'width': 0.25, 'name': data_labels[2], 'type': "scatter", 'mode': "lines", 'x': [point[data_labels[0]] for i, point in enumerate(data)], 'y': [point[data_labels[2]] for i, point in enumerate(data)], 'width': 0.25, 'yaxis': "y2", 'title': '<b>' + graph_title + '</b>', 'legend': 'x': -.1, 'y': 1.2, 'font': 'size': 8, 'font': 'size': 12, 'width': 800, 'height': 600, 'xaxis': 'title': '<b>' + data_labels[0] + '</b>', 'titlefont': 'size': 10, 'tickangle': -45, 'tickfont': 'size': 8, 'showline': True, 'yaxis': 'title': '<b>' + data_labels[1] + '</b>', 'titlefont': 'size': 10, 'showline': True, 'tickfont': 'size': 8, 'showgrid': False,, 'yaxis2': 'title': '<b>' + data_labels[2] + '</b>', 'titlefont': 'size': 10, 'tickfont': 'size': 8, 'showline': True, 'overlaying': "y", 'side': "right", 'showgrid': False,
6 05/11/2018 graph-stats.py 6 if blinegraph: layout['yaxis'].update('type': "linear") layout['yaxis2'].update('type': "linear") pass else: layout.update('barmode': "group", 'bargap': 0.15, 'bargroupgap': 0.5) interaction = 'responsive': True, 'scrollzoom': True, 'editable': True Plotly.newPlot(ctx, ''' + json.dumps(traces) + ''', ''' + json.dumps(layout) + ''', ''' + json.dumps(interaction) + ; </script> if not blinegraph: traces = [ ] layout =,, 'name': data_labels[1], 'hole':.4, 'type': "pie", 'labels': [point[data_labels[0]] for i, point in enumerate(data)], 'values': [point[data_labels[1]] for i, point in enumerate(data)], 'domain': 'row': 0, 'column': 0, 'outsidetextfont': 'size': 8, 'insidetextfont': 'size': 8, 'legend': 'font': 'size': 8, 'textfont': 'size': 8, 'font': 'size': 8, 'hoverinfo': 'label+percent+name', 'hoverlabel': 'font': 'size': 8, 'textinfo': 'none' 'name': data_labels[2], 'hole':.4, 'type': "pie", 'labels': [point[data_labels[0]] for i, point in enumerate(data)], 'values': [point[data_labels[2]] for i, point in enumerate(data)], 'domain': 'row': 1, 'column': 0, 'outsidetextfont': 'size': 8, 'insidetextfont': 'size': 8, 'legend': 'font': 'size': 8, 'textfont': 'size': 8, 'font': 'size': 8, 'hoverinfo': 'label+percent+name', 'hoverlabel': 'font': 'size': 8, 'textinfo': 'none'
7 05/11/2018 graph-stats.py 7 'title': '<b>' + graph_title + '</b>', 'annotations': [ 'font': 'size': 8, 'showarrow': False, 'text': '<b>' + data_labels[1] + '</b>', 'x': 0.5, 'y': 0.8, 'font': 'size': 8, 'showarrow': False, 'text': '<b>' + data_labels[2] + '</b>', 'x': 0.5, 'y': 0.25 ], 'height': 600, 'width': 600, 'grid': 'rows': 2, 'columns': 1, 'legend': 'font': 'size': 10 <script> var ctx = document.getelementbyid("''' + div + '''-pie"); Plotly.newPlot(ctx, ''' + json.dumps(traces) + ''', ''' + json.dumps(layout) + ''' ); </script> elif len(data_labels) == 2: trace = [ 'name': data_labels[1], 'type': "bar", 'x': [point[data_labels[0]] for i, point in enumerate(data)], 'y': [point[data_labels[1]] for i, point in enumerate(data)], 'width': 0.25, 'marker': 'color': '#009933', 'line': 'width': 1.0 ] layout = 'title': '<b>' + graph_title + '</b>', 'legend': 'x': -.1, 'y': 1.2, 'font': 'size': 8, 'font': 'size': 12, 'height': 600, 'width': 800, 'xaxis': 'title': '<b>' + data_labels[0] + '</b>', 'titlefont': 'size': 10, 'tickangle': -45,
8 05/11/2018 graph-stats.py 8 'tickfont': 'size': 8,, 'yaxis': 'title': '<b>' + data_labels[1] + '</b>', 'titlefont': 'size': 10, 'showline': True, 'tickfont': 'size': 8, 'showgrid': False, 'barmode': "group", 'bargap': 0.15, 'bargroupgap': 0.5 interaction = 'responsive': True, 'scrollzoom': True, 'editable': True; <div style="width:1200px;height:600px;"> <div id="''' + div + '''" style="width:75%; float:left;"></div> <div id="''' + div + '''-pie" style="width:25%; float:left;"></div> </div> <script> var ctx = document.getelementbyid("''' + div + '''"); Plotly.newPlot(ctx, ''' + json.dumps(trace) + ''', ''' + json.dumps(layout) + ''', ''' + json.dumps(interaction) + ; </script> trace = [ ] layout =, 'name': data_labels[1], 'hole':.4, 'type': "pie", 'labels': [point[data_labels[0]] for i, point in enumerate(data)], 'values': [point[data_labels[1]] for i, point in enumerate(data)], 'domain': 'row': 0, 'column': 0, 'outsidetextfont': 'size': 8, 'insidetextfont': 'size': 8, 'legend': 'font': 'size': 8, 'textfont': 'size': 8, 'font': 'size': 8, 'hoverinfo': 'label+percent+name', 'hoverlabel': 'font': 'size': 8, 'textinfo': 'none' 'title': '<b>' + graph_title + '</b>', 'annotations': [ 'font': 'size': 8, 'showarrow': False, 'text': '<b>' + data_labels[1] + '</b>', 'x': 0.5,
9 05/11/2018 graph-stats.py 9, 'y': 0.5 ], 'height': 600, 'width': 600, 'grid': 'rows': 1, 'columns': 1, 'legend': 'font': 'size': 10 <script> var ctx = document.getelementbyid("''' + div + '''-pie"); Plotly.newPlot(ctx, ''' + json.dumps(trace) + ''', ''' + json.dumps(layout) + ; </script> else: print("illegal data_label value: " + repr(data_label)) # closes the html page; if "e" == mode: </body> </html> # restores default output stream; if None!= html_output: sys.stdout = sys. stdout def cumulandextend2(): """ for 2 variables in resultset; """ global rawdata sum_count = 0 sum_size = 0 new_month = str(datetime.now().year) + "/" + str(datetime.now().month) for ind, point in enumerate(rawdata): sum_count += int(point['count(*)']) point['count(*)'] = sum_count sum_size += int(point['tot_size']) point['tot_size'] = sum_size if rawdata[ind]['month'] < new_month: new_point = dict(rawdata[ind]) new_point['month'] = new_month rawdata.append(new_point) def cumulandextend3(key): """ for 3 variables in resultset; """ global rawdata prec_doc = "" sum_count = 0 sum_size = 0 new_month = str(datetime.now().year) + "/" + str(datetime.now().month) for ind, point in enumerate(rawdata): if "" == prec_doc: prec_doc = point[key] if point[key]!= prec_doc:
10 05/11/2018 graph-stats.py 10 # duplicate the last point so the line graphe shows a flat line and not a simple dot when there is a unique point for the document type; if rawdata[ind - 1]['month'] < new_month: new_point = dict(rawdata[ind - 1]) new_point['month'] = new_month rawdata.insert(ind, new_point) prec_doc = point[key] sum_count = 0 sum_size = 0 else: sum_count += int(point['count(*)']) point['count(*)'] = sum_count sum_size += int(point['tot_size']) point['tot_size'] = sum_size if rawdata[ind]['month'] < new_month: new_point = dict(rawdata[ind]) new_point['month'] = new_month rawdata.append(new_point) # # main; if name == " main ": DctmAPI.logLevel = 0 # parse the command-line parameters; # old-style for I don't need more flexibility here; repository = None output_file = None try: (opts, args) = getopt.getopt(sys.argv[1:], "hd:o:", ["help", "docbase=", "output="]) except getopt.getopterror: print("illegal option") print("./graph-stats.py -h --help [-d --docbase docbase] [-o --output_file output_file]") sys. for opt, arg in opts: if opt in ("-h", "--help"): Usage() sys.exit() elif opt in ("-d", "--docbase"): repository = arg elif opt in ("-o", "--output"): output_file = arg if None == repository: print("at least one repository must be specified") Usage() sys.exit() DctmAPI.show("Will connect to docbase(s): " + repository + " and output to " + ("stdout" if "stdout" == output_file else "one single file " + output_file if output_file is not None else "one file per docbase")) # needed to locally import the js library Plotly; server = " :8000" docbase_done = set() status = DctmAPI.dmInit() for pointer, docbase in enumerate(repository.split(",")): # graphe_1; if docbase in docbase_done: print("warning: docbase :s was already processed and won't be again,
11 05/11/2018 graph-stats.py 11 print("warning: docbase :s was already processed and won't be again, skipping...".format(docbase)) continue docbase_done.add(docbase) session = DctmAPI.connect(docbase = docbase, user_name = "dmadmin", password = "dmadmin") if session is None: print("no session opened, exiting...") page_title = "Graphical Overview of Repository " + docbase if None == output_file: html_output = "./graphs/" + docbase + "-" + datetime.today().strftime("%y%m %d-%h%m%s") + ".html" elif "stdout" == output_file: html_output = None else: html_output = output_file graph_name = "graphe_1" stmt = """select r_object_type, count(*), sum(r_full_content_size) as "tot_size" from dm_document(all) group by r_object_type order by 1""" graph_title = "Q1. Present Count & Size Per Document Type", data_labels = attr_name, mode = ("b" if (("stdout" == output_file or output_file is not None) and 0 == pointer) or output_file is None else None)) # graphe_2; graph_name = "graphe_2" stmt = """select r_object_type, datetostring(r_creation_date, 'yyyy/mm') as "month", count(*), sum(r_full_content_size) as "tot_size" from dm_document(all) group by r_object_type, datetostring(r_creation_date, 'yyyy/mm') order by 1, 2""" graph_title = "Q2. Monthly New Documents per Type", cumulandextend3('r_object_type') Plot2HTML(div = graph_name + "l", graph_title = "Q2l. Cumulated Monthly Documents per Type", data_labels = attr_name, blinegraph = True)
12 05/11/2018 graph-stats.py 12 # graphe_3; graph_name = "graphe_3" stmt = """select r_object_type, datetostring(r_modify_date, 'yyyy/mm') as "month", count(*), sum(r_full_content_size) as "tot_size" from dm_document(all) where r_creation_date < r_modify_date group by r_object_type, datetostring(r_modify_date, 'yyyy/mm') order by 1, 2""" graph_title = "Q3. Monthly Modified Documents per Type", cumulandextend3('r_object_type') Plot2HTML(div = graph_name + "l", graph_title = "Q3l. Cumulated Monthly Modified Documents per Type", data_labels = attr_name, blinegraph = True) # graphe_4; graph_name = "graphe_4" stmt = """select datetostring(r_creation_date, 'yyyy/mm') as "month", count(*), sum(r_full_content_size) as "tot_size" from dm_document(all) group by datetostring(r_creation_date, 'yyyy/mm') order by 1""" graph_title = "Q4. Monthly New Documents", data_labels = attr_name ) cumulandextend2() Plot2HTML(div = graph_name + "l", graph_title = "Q4l. Cumulated Monthly Documents", data_labels = attr_name, blinegraph = True) # graphe_5; graph_name = "graphe_5" stmt = """select datetostring(r_modify_date, 'yyyy/mm') as "month", count(*), sum(r_full_content_size) as "tot_size" from dm_document(all) where r_creation_date!= r_modify_date group by datetostring(r_modify_date, 'yyyy/ mm') order by 1; """
13 05/11/2018 graph-stats.py 13 graph_title = "Q5. Monthly Modified Documents", cumulandextend2() Plot2HTML(div = graph_name + "l", graph_title = "Q5l. Cumulated Monthly Modified Documents", data_labels = attr_name, blinegraph = True, mode = 'e') # graphe_6; graph_name = "graphe_6" stmt = """select a_content_type, count(*), sum(r_full_content_size) as "tot_size" from dm_document(all) group by a_content_type order by 1""" graph_title = "Q6. Count & Size Per Content Format", # graphe_7; graph_name = "graphe_7" stmt = """select a_content_type, datetostring(r_creation_date, 'yyyy-mm') as "month", count(*), sum(r_full_content_size) as "tot_size" from dm_document(all) group by a_content_type, datetostring(r_creation_date, 'yyyy-mm') having count(*) > 10 order by 1, 2""" graph_title = "Q7. Monthly Created Documents Per Content Format with count(*) > 10", cumulandextend3('a_content_type') Plot2HTML(div = graph_name + "l", graph_title = "Q7l. Cumulated Monthly Created Documents Per Content Format with count(*) > 10", data_labels = attr_name, blinegraph = True) # graphe_8; graph_name = "graphe_8"
14 05/11/2018 graph-stats.py 14 stmt = """select a_storage_type, count(*), sum(r_full_content_size) as "tot_size" from dm_document(all) group by a_storage_type order by a_storage_type""" graph_title = "Q8. Count & Size Per Filestore", # graphe_9; graph_name = "graphe_9" stmt = """select r_object_type, a_storage_type, count(*), sum(r_full_content_size) as "tot_size" from dm_document(all) group by r_object_type, a_storage_type order by r_object_type, a_storage_type""" graph_title = "Q9. Count & Size Per Document Type & Filestore", # graphe_10; graph_name = "graphe_10" stmt = """select a_content_type, a_storage_type, count(*), sum(r_full_content_size) as "tot_size" from dm_document(all) group by a_content_type, a_storage_type having count(*) > 10 order by a_content_type, a_storage_type""" graph_title = "Q10. Count & Size Per Content Format & Filestore with count(*) > 10", # graphe_11; graph_name = "graphe_11" stmt = """select owner_name, count(*) from dm_acl group by owner_name order by 2 desc"""
15 05/11/2018 graph-stats.py 15 graph_title = "Q11. ACLs per owner", # graphe_12; graph_name = "graphe_12" stmt = """select acl_name, count(*) from dm_document(all) where acl_name not like 'dm_%' group by acl_name having count(*) >= 10 order by 1""" graph_title = "Q12. External ACLs in Use by >= 10 documents", # graphe_13; graph_name = "graphe_13" stmt = """select name, count(*) from dmi_queue_item group by name order by 2 desc""" graph_title = "Q13. Queue Items by Name", data_labels = attr_name, mode = ('e' if (("stdout" == output_file or output_file is not None) and len(repository.split(",")) - 1 == pointer) or output_file is None else None)) status = DctmAPI.disconnect(session) print("error while disconnecting")
Week 8. Big Data Analytics Visualization with plotly for R
Week 8. Big Data Analytics Visualization with plotly for R Hyeonsu B. Kang hyk149@eng.ucsd.edu May 2016 1 Adding interactivity to graphs Plotly is a collaboration platform for modern data science. It lets
More informationDesktop Studio: Charts. Version: 7.3
Desktop Studio: Charts Version: 7.3 Copyright 2015 Intellicus Technologies This document and its content is copyrighted material of Intellicus Technologies. The content may not be copied or derived from,
More informationCSE 115. Introduction to Computer Science I
CSE 115 Introduction to Computer Science I Announcements Dr. Alphonce's e-mail glitched: not all unread e-mails were shown. Please be patient while he catches up. Announcements A sample midterm exam will
More informationDesktop Studio: Charts
Desktop Studio: Charts Intellicus Enterprise Reporting and BI Platform Intellicus Technologies info@intellicus.com www.intellicus.com Working with Charts i Copyright 2011 Intellicus Technologies This document
More informationCSE 115. Introduction to Computer Science I
CSE 115 Introduction to Computer Science I Road map Review Limitations of front-end sites Web servers Examples Review
More informationUser Manual MS Energy Services
User Manual MS Energy Services Table of content Access 4 Log In 4 Home Page 5 Add pre-visualisations 6 Pre-visualisation with variables 7 Multiple pre-visualisations 8 Pre-visualisation window 8 Design
More informationCGameState.cs. CGameState.cs. CGameState.cs. CGameState.cs. JewelThiefLevelDesigner/JewelThief/CGameState.cs
slide 1 slide 2 JewelThiefLevelDesigner/JewelThief/ namespace JewelThief /// /// This class is used to store the position and /// velocity of a dynamic entity. Note that /// both the position
More informationHow to plot basic charts with plotly
How to plot basic charts with plotly INTRODUCTION Plotly s R graphing library makes interactive, publicationquality web graphs. More specifically it gives us the ability to make line plots, scatter plots,
More informationimport os import ctypes import sys, traceback
05/11/2018 DctmAPI.py 1 This module is a python - Documentum binding based on ctypes; requires libdmcl40.so/libdmcl.so to be reachable through LD_LIBRARY_PATH; C. Cervini - dbi-services.com The binding
More informationIntroduction to Plot.ly: Customizing a Stacked Bar Chart
Introduction to Plot.ly: Customizing a Stacked Bar Chart Plot.ly is a free web data visualization tool that allows you to download and embed your charts on other websites. This tutorial will show you the
More informationConfiguring Ad hoc Reporting. Version: 16.0
Configuring Ad hoc Reporting Version: 16.0 Copyright 2018 Intellicus Technologies This document and its content is copyrighted material of Intellicus Technologies. The content may not be copied or derived
More informationSAS Visual Analytics 8.2: Working with Report Content
SAS Visual Analytics 8.2: Working with Report Content About Objects After selecting your data source and data items, add one or more objects to display the results. SAS Visual Analytics provides objects
More informationHIGHCHARTS - QUICK GUIDE HIGHCHARTS - OVERVIEW
HIGHCHARTS - QUICK GUIDE http://www.tutorialspoint.com/highcharts/highcharts_quick_guide.htm Copyright tutorialspoint.com HIGHCHARTS - OVERVIEW Highcharts is a pure JavaScript based charting library meant
More informationSamples using API. User Guide
Samples using API User Guide 1 Table of Contents 1 Table of Contents... 2 2 Python sample... 4 2.1 callapi.py file configuration...7 3 Bash sample... 9 4 JavaScript sample...11 This article describes 3
More informationHTML Summary. All of the following are containers. Structure. Italics Bold. Line Break. Horizontal Rule. Non-break (hard) space.
HTML Summary Structure All of the following are containers. Structure Contains the entire web page. Contains information
More informationData Should Not be a Four Letter Word Microsoft Excel QUICK TOUR
Toolbar Tour AutoSum + more functions Chart Wizard Currency, Percent, Comma Style Increase-Decrease Decimal Name Box Chart Wizard QUICK TOUR Name Box AutoSum Numeric Style Chart Wizard Formula Bar Active
More informationThis tutorial will teach you the basics of Highcharts. There are chapters discussing all the basic components of Highcharts with suitable examples.
i About the Tutorial Highcharts is a pure JavaScript based charting library meant to enhance web applications by adding interactive charting capability. Highcharts provides a wide variety of charts. For
More informationIntellicus Enterprise Reporting and BI Platform
Configuring Ad hoc Reporting Intellicus Enterprise Reporting and BI Platform Intellicus Technologies info@intellicus.com www.intellicus.com Copyright 2012 Intellicus Technologies This document and its
More informationSection 33: Advanced Charts
Section 33 Advanced Charts By the end of this Section you should be able to: Use Chart Options Add Moving Averages to Charts Change a 3D Chart View Use Data Labels and Markers Create Stacked Bar Charts
More informationUsing the Platform LSF blaunch Framework. Platform LSF Version 8.0 June 2011
Using the Platform LSF blaunch Framework Platform LSF Version 8.0 June 2011 Copyright 1994-2011 Platform Computing Corporation. Although the information in this document has been carefully reviewed, Platform
More information9 POINTS TO A GOOD LINE GRAPH
NAME: PD: DATE: 9 POINTS TO A GOOD LINE GRAPH - 2013 1. Independent Variable on the HORIZONTAL (X) AXIS RANGE DIVIDED BY SPACES and round up to nearest usable number to spread out across the paper. LABELED
More informationmyinsight for Documentum User Guide Documentum Administrator, Webtop, Taskspace
myinsight for Documentum User Guide Documentum Administrator, Webtop, Taskspace Contents 1. Version History... 4 2. Product Description... 5 3. Introduction...7 3.1. 3.2. 3.3. 3.4. 3.5. Roles...7 Reports...
More informationArkansas Curriculum Framework for Computer Applications II
A Correlation of DDC Learning Microsoft Office 2010 Advanced Skills 2011 To the Arkansas Curriculum Framework for Table of Contents Unit 1: Spreadsheet Formatting and Changing the Appearance of a Worksheet
More informationmyinsight for Documentum User Guide Widgets
myinsight for Documentum User Guide Widgets Contents 1. Version History... 4 2. Product Description... 5 3. Introduction...7 3.1. 3.2. 3.3. 3.4. 3.5. Roles...7 Reports... 8 Report Definitions... 8 Report
More information"'' zoo 250. MYINSIGHT Dosh boards & Reports. User Guide D2 4.x
300 250. "'' zoo 150 10 974 575 645 941 802 715 557 MYINSIGHT Dosh boards & Reports User Guide D2 4.x Chapter1 1 VERSION HISTORY Date Changes Version number 7-12-2015 Transformation to DITA. Update for
More informationIntroduction to SAS/GRAPH Statistical Graphics Procedures
3 CHAPTER 1 Introduction to SAS/GRAPH Statistical Graphics Procedures Overview of SAS/GRAPH Statistical Graphics Procedures 3 Introduction to the SGPLOT Procedure 4 Introduction to the SGPANEL Procedure
More informationAdvanced Excel. Click Computer if required, then click Browse.
Advanced Excel 1. Using the Application 1.1. Working with spreadsheets 1.1.1 Open a spreadsheet application. Click the Start button. Select All Programs. Click Microsoft Excel 2013. 1.1.1 Close a spreadsheet
More informationIndex COPYRIGHTED MATERIAL. Symbols and Numerics
Symbols and Numerics ( ) (parentheses), in functions, 173... (double quotes), enclosing character strings, 183 #...# (pound signs), enclosing datetime literals, 184... (single quotes), enclosing character
More informationMarcelo Ponce. Visualization WG. September 19 th, M.Ponce (SciNet HPC UofT) ploy.ly September 19 th, / 25
Marcelo Ponce Visualization WG September 19 th, 2016 M.Ponce (SciNet HPC UofT ploy.ly September 19 th, 2016 1 / 25 Outline 1 plot.ly Features & Platforms APIs Installation & Usage M.Ponce (SciNet HPC UofT
More informationEMC Documentum Dump and Load Technical Details and Troubleshooting
EMC Documentum Dump and Load Technical Details and Troubleshooting A Detailed Review Abstract This white paper is intended to help users understand the EMC Documentum dump and load utility and troubleshoot
More informationTechnical Documentation Version 7.3 Output
Technical Documentation Version 7.3 Output These documents are copyrighted by the Regents of the University of Colorado. No part of this document may be reproduced, stored in a retrieval system, or transmitted
More informationSAS Web Report Studio 3.1
SAS Web Report Studio 3.1 User s Guide SAS Documentation The correct bibliographic citation for this manual is as follows: SAS Institute Inc. 2006. SAS Web Report Studio 3.1: User s Guide. Cary, NC: SAS
More informationGetting started with Franson GpsGate 2.0
Franson GpsGate http://franson.com/gpsgate 2004-2006 Franson Technology AB, All rights reserved User's Guide Franson GpsGate v2.0 for Windows Getting started with Franson GpsGate 2.0 How you install GpsGate.
More informationContents. Tutorials Section 1. About SAS Enterprise Guide ix About This Book xi Acknowledgments xiii
Contents About SAS Enterprise Guide ix About This Book xi Acknowledgments xiii Tutorials Section 1 Tutorial A Getting Started with SAS Enterprise Guide 3 Starting SAS Enterprise Guide 3 SAS Enterprise
More informationDiscovery Service Infrastructure for Test- bädden
Discovery Service Infrastructure for Test- bädden för EID 2.0 Implementation guidelines Version 0.70 2013-04-24 This document describes the discovery service infrastructure for testbädden for EID 2.0 and
More informationWebIntelligence. Creating Documents
Creating Documents This page is intentionally left blank. 2 WIC110904 Table of Contents Lesson Objective... 5 For Assistance...6 Introduction... 7 Document Editor... 7 Designing a Query Flowchart... 9
More informationThe software shall provide the necessary tools to allow a user to create a Dashboard based on the queries created.
IWS BI Dashboard Template User Guide Introduction This document describes the features of the Dashboard Template application, and contains a manual the user can follow to use the application, connecting
More informationYear 8 Computing Science End of Term 3 Revision Guide
Year 8 Computing Science End of Term 3 Revision Guide Student Name: 1 Hardware: any physical component of a computer system. Input Device: a device to send instructions to be processed by the computer
More informationJavaScript (5A) JavaScript
JavaScript (5A) JavaScript Copyright (c) 2012 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any
More informationVisual Customizations
Create a Grid View, on page 1 Create a Gauge View, on page 2 Create a Chart View, on page 3 Grouping, on page 5 Set Threshold Indicators for Fields, on page 6 Create a Grid View Grids are tabular presentations
More informationMicrosoft Office Word 2013 Intermediate. Course 01 Working with Tables and Charts
Microsoft Office Word 2013 Intermediate Course 01 Working with Tables and Charts Slide 1 Course 01: Working with Tables and Charts Sort Table Data Control Cell Layout Perform Calculations in a Table Create
More informationD3 Introduction. Gracie Young and Vera Lin. Slides adapted from
D3 Introduction Gracie Young and Vera Lin Slides adapted from Maneesh Agrawala Jessica Hullman Ludwig Schubert Peter Washington Alec Glassford and Zach Maurer CS 448B: Visualization Fall 2018 Topics 1)
More informationStatic Webpage Development
Dear Student, Based upon your enquiry we are pleased to send you the course curriculum for PHP Given below is the brief description for the course you are looking for: - Static Webpage Development Introduction
More informationjmaki Overview Sang Shin Java Technology Architect Sun Microsystems, Inc.
jmaki Overview Sang Shin Java Technology Architect Sun Microsystems, Inc. sang.shin@sun.com www.javapassion.com Agenda What is and Why jmaki? jmaki widgets Using jmaki widget - List widget What makes up
More informationTechnology Assignment: Scatter Plots
The goal of this assignment is to create a scatter plot of a set of data. You could do this with any two columns of data, but for demonstration purposes we ll work with the data in the table below. You
More informationStamp Builder. Documentation. v1.0.0
Stamp Email Builder Documentation http://getemailbuilder.com v1.0.0 THANK YOU FOR PURCHASING OUR EMAIL EDITOR! This documentation covers all main features of the STAMP Self-hosted email editor. If you
More informationJavaScript: Introduction, Types
JavaScript: Introduction, Types Computer Science and Engineering College of Engineering The Ohio State University Lecture 19 History Developed by Netscape "LiveScript", then renamed "JavaScript" Nothing
More informationChapter 2: Clients, charts of accounts, and bank accounts
Chapter 2: Clients, charts of accounts, and bank accounts Most operations in BankLink Practice are client specific. These include all work on coding transactions, reporting, and maintaining chart of accounts
More informationIntroduction to Computer Science Web Development
Introduction to Computer Science Web Development Flavio Esposito http://cs.slu.edu/~esposito/teaching/1080/ Lecture 14 Lecture outline Discuss HW Intro to Responsive Design Media Queries Responsive Layout
More informationGO! with Microsoft PowerPoint 2016 Comprehensive
GO! with Microsoft PowerPoint 2016 Comprehensive First Edition Chapter 3 Enhancing a Presentation with Animation, Video, Tables, and Charts Learning Objectives Customize Slide Backgrounds and Themes Animate
More informationDesign Project. i385f Special Topics in Information Architecture Instructor: Don Turnbull. Elias Tzoc
Design Project Site: News from Latin America Design Project i385f Special Topics in Information Architecture Instructor: Don Turnbull Elias Tzoc April 3, 2007 Design Project - 1 I. Planning [ Upper case:
More informationUnit 10 - Client Side Customisation of Web Pages. Week 5 Lesson 1 CSS - Selectors
Unit 10 - Client Side Customisation of Web Pages Week 5 Lesson 1 CSS - Selectors Last Time CSS box model Concept of identity - id Objectives Selectors the short story (or maybe not) Web page make-over!
More informationHere are a few easy steps to create a simple timeline. Open up your favorite text or HTML editor and start creating an HTML file.
1 of 6 02-Sep-2013 1:52 PM Getting Started with Timeline From SIMILE Widgets Contents 1 Getting Started 1.1 Note 1.2 Examples 1.3 Step 1. Link to the API 1.4 Step 2. Create a DIV Element 1.5 Step 3. Call
More informationKaleidaGraph Quick Start Guide
KaleidaGraph Quick Start Guide This document is a hands-on guide that walks you through the use of KaleidaGraph. You will probably want to print this guide and then start your exploration of the product.
More informationContent Elements. Contents. Row
Content Elements Created by Raitis S, last modified on Feb 09, 2016 This is a list of 40+ available content elements that can be placed on the working canvas or inside of the columns. Think of them as
More informationTTWeb Quick Start Guide
Web to Host Connectivity TTWeb Quick Start Guide TTWeb is Turbosoft s web to host terminal emulation solution, providing unprecedented control over the deployment of host connectivity software combined
More informationExcel Tutorial 4: Analyzing and Charting Financial Data
Excel Tutorial 4: Analyzing and Charting Financial Data Microsoft Office 2013 Objectives Use the PMT function to calculate a loan payment Create an embedded pie chart Apply styles to a chart Add data labels
More informationUsing the YANG Development Kit (YDK) with Cisco IOS XE
Using the YANG Development Kit (YDK) with Cisco IOS XE 1. Overview The YANG Development Kit (YDK) is a software development kit that provides APIs that are generated from YANG data models. These APIs,
More informationMI1004 Script programming and internet applications
MI1004 Script programming and internet applications Course content and details Learn > Course information > Course plan Learning goals, grades and content on a brief level Learn > Course material Study
More informationIllustrator Charts. Advanced options
Illustrator Charts Advanced options Setting up labels Labels are words or numbers that describe two things: the sets of data you want to compare, and the categories across which you want to compare them.
More informationWORKING IN SGPLOT. Understanding the General Logic of Attributes
WORKING IN SGPLOT Understanding the General Logic of Attributes Graphical Elements in SGPLOT All graphs generated by SGPLOT can be viewed as a collection of elements. Some of the nomenclature of these
More informationMS-Access : Objective Questions (MCQs) Set 1
1 MS-Access : Objective Questions (MCQs) Set 1 1. What Are The Different Views To Display A Table A) Datasheet View B) Design View C) Pivote Table & Pivot Chart View 2. Which Of The Following Creates A
More informationUsing an ArcGIS Server.Net version 10
Using an ArcGIS Server.Net version 10 Created by Vince DiNoto Vince.dinoto@kctcs.edu Contents Concept... 2 Prerequisites... 2 Data... 2 Process... 3 Creating a Service... 3 Down Loading Shapefiles... 3
More informationWORKING IN SGPLOT. Understanding the General Logic of Attributes
WORKING IN SGPLOT Understanding the General Logic of Attributes Graphical Elements in SGPLOT All graphs generated by SGPLOT can be viewed as a collection of elements. Some of the nomenclature of these
More informationCS Programming Languages: Python
CS 3101-1 - Programming Languages: Python Lecture 5: Exceptions / Daniel Bauer (bauer@cs.columbia.edu) October 08 2014 Daniel Bauer CS3101-1 Python - 05 - Exceptions / 1/35 Contents Exceptions Daniel Bauer
More informationUnderstand and plan a chart Create a chart Move and resize charts and chart objects Apply chart layouts and styles
Working with Charts Objectives Understand and plan a chart Create a chart Move and resize charts and chart objects Apply chart layouts and styles 2 Objectives Customize chart elements Enhance a chart Create
More information1 of 9 8/27/2014 10:53 AM Units: Teacher: MOExcel/Access, CORE Course: MOExcel/Access Year: 2012-13 Excel Unit A What is spreadsheet software? What are the parts of the Excel window? What are labels and
More informationCSC Website Design, Spring CSS Flexible Box
CSC 122 - Website Design, Spring 2017 CSS Flexible Box CSS Flexible Box Layout Module The CSS flexbox can be used to ensure that elements behave predictably when the page layout must accommodate different
More informationHoster: openload.co - Free PLUGIN_DEFECT-Error: 08d a1830b60ab13ddec9a2ff6
JDownloader - Bug #80273 Bug # 75914 (Closed): Hoster: openload.co - Free Hoster: openload.co - Free PLUGIN_DEFECT-Error: 08d9453425a1830b60ab13ddec9a2ff6 08/18/2016 02:13 AM - StatServ Status: Closed
More information. Sheet - Sheet. Unhide Split Freeze. Sheet (book) - Sheet-book - Sheet{book} - Sheet[book] - Arrange- Freeze- Split - Unfreeze - .
101 Excel 2007 (Workbook) : :. Sheet Workbook. Sheet Delete. Sheet. Unhide Split Freeze.1.2.3.4.5.6 Sheet.7 Sheet-book - Sheet (book) - Sheet{book} - Sheet[book] - Split - Unfreeze -.8 Arrange - Unhide
More informationPRACTICE EXERCISES. Family Utility Expenses
PRACTICE EXERCISES Family Utility Expenses Your cousin, Rita Dansie, wants to analyze her family's utility expenses for 2012. She wants to save money during months when utility expenses are lower so that
More informationDreamweaver: Portfolio Site
Dreamweaver: Portfolio Site Part 3 - Dreamweaver: Developing the Portfolio Site (L043) Create a new Site in Dreamweaver: Site > New Site (name the site something like: Portfolio, or Portfolio_c7) Go to
More informationEXCEL 2003 DISCLAIMER:
EXCEL 2003 DISCLAIMER: This reference guide is meant for experienced Microsoft Excel users. It provides a list of quick tips and shortcuts for familiar features. This guide does NOT replace training or
More informationVisual Customizations
Overview, on page 1 Create a Grid View, on page 1 Create a Chart View, on page 2 Group By, on page 5 Report Thresholds, on page 6 Overview Stock reports are the reports that are pre-bundled and supported
More informationInline Elements Karl Kasischke WCC INP 150 Winter
Inline Elements 2009 Karl Kasischke WCC INP 150 Winter 2009 1 Inline Elements Emphasizing Text Increasing / Decreasing Text Size Quotes and Citations Code, Variables, and Sample Output Spanning Text Subscripts
More informationEMC Documentum Connector for Microsoft SharePoint Farm Solution
EMC Documentum Connector for Microsoft SharePoint Farm Solution Version 7.2 Content Management Guide EMC Corporation Corporate Headquarters Hopkinton, MA 01748-9103 1-508-435-1000 www.emc.com Legal Notice
More informationMICROSOFT EXCEL BUILDING GRAPHS
MICROSOFT EXCEL BUILDING GRAPHS Basic steps for creating graph in Microsoft Excel: 1. Input your data in an Excel file. 2. Choose a type of graph to create. 3. Switch axes if necessary. 4. Adjust your
More informationIntellicus Enterprise Reporting and BI Platform
Designing Adhoc Reports Intellicus Enterprise Reporting and BI Platform Intellicus Technologies info@intellicus.com www.intellicus.com Designing Adhoc Reports i Copyright 2012 Intellicus Technologies This
More informationWhile editing a page, a menu bar will appear at the top with the following options:
Page Editor ===> Page Editor How Can I Use the Page Editor? The Page Editor will be your primary way of editing your website. Page Editor Basics While editing a page, you will see that hovering your mouse
More informationArc en Ciel Ltd. Gazetteer Webservice FactSheet
Arc en Ciel Ltd. Gazetteer Webservice FactSheet Overview We provide two gazetteer webservices: on place name and on street name. The place name service allows a user to browse for any town, village or
More informationCAPE. Community Behavioral Health Data. How to Create CAPE. Community Assessment and Education to Promote Behavioral Health Planning and Evaluation
CAPE Community Behavioral Health Data How to Create CAPE Community Assessment and Education to Promote Behavioral Health Planning and Evaluation i How to Create County Community Behavioral Health Profiles
More informationElixir Ad-hoc Report. Release Elixir Technology Pte Ltd
Elixir Ad-hoc Report Release 4.0.0 Elixir Technology Pte Ltd Elixir Ad-hoc Report: Release 4.0.0 Elixir Technology Pte Ltd Published 2015 Copyright 2015 Elixir Technology Pte Ltd All rights reserved. Java
More informationtccpage2.py: Dynamic generation of TCC-style web pages with lxml
: Dynamic generation of TCC-style web pages with lxml Abstract John W. Shipman 2011-11-12 17:15 Describes a Python-language module for the generation of static and dynamic Web pages in the 's style. This
More informationHow to Make a Contact Us PAGE in Dreamweaver
We found a great website on the net called http://dreamweaverspot.com and we have basically followed their tutorial for creating Contact Forms. We also checked out a few other tutorials we found by Googling,
More informationtracecase: Trace table case coverage checker
: race table case coverage checker John W. Shipman 03-08-9 0:4 Abstract Implementation of a utility to check a truth table for complete coverage, in support of the Cleanroom software development methodology.
More informationGoogle Web Toolkit Creating/using external JAR files
Google Web Toolkit Creating/using external JAR files If you develop some code that can be reused in more than one project, one way to create a module is to create an external JAR file. This JAR file can
More informationElixir Ad-hoc Report. Release Elixir Technology Pte Ltd
Elixir Ad-hoc Report Release 3.5.0 Elixir Technology Pte Ltd Elixir Ad-hoc Report: Release 3.5.0 Elixir Technology Pte Ltd Published 2014 Copyright 2014 Elixir Technology Pte Ltd All rights reserved. Java
More informationIntroduction to HTML5
Introduction to HTML5 History of HTML 1991 HTML first published 1995 1997 1999 2000 HTML 2.0 HTML 3.2 HTML 4.01 XHTML 1.0 After HTML 4.01 was released, focus shifted to XHTML and its stricter standards.
More informationTIBCO LiveView Web New and Noteworthy
TIBCO LiveView Web New and Noteworthy Introduction TIBCO LiveView Web is an HTML5 and WebSockets powered client application for visualizing data from TIBCO Live Datamart 2.1 servers. In LiveView Web (hereafter,
More information1. Click in cell A2, and then drag to cell D5 to select the data in those four rows and columns.
Training Chart work EXERCISE 1: CREATE A CHART 1. Click in cell A2, and then drag to cell D5 to select the data in those four rows and columns. 2. On the ribbon, click the Insert tab. In the Charts group,
More informationMicrosoft Excel 2010 Tutorial
1 Microsoft Excel 2010 Tutorial Excel is a spreadsheet program in the Microsoft Office system. You can use Excel to create and format workbooks (a collection of spreadsheets) in order to analyze data and
More informationLecture 6: Web Security CS /17/2017
Lecture 6: Web Security CS5431 03/17/2017 2015 Security Incidents Web Vulnerabilities by Year 2500 2000 1500 1000 500 0 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015
More informationExcel 2010 Charts and Graphs
Excel 2010 Charts and Graphs In older versions of Excel the chart engine looked tired and old. Little had changed in 15 years in charting. The popular chart wizard has been replaced in Excel 2010 by a
More informationUsing the Command-Line Interface
CHAPTER 1 The command-line interface (CLI) is a line-oriented user interface that has a set of commands for configuring, managing, and monitoring the CSS. To help you use these commands, this chapter provides
More informationClient-side Web Engineering 2 From XML to Client-side Mashups. SWE 642, Spring 2008 Nick Duan. February 6, What is XML?
Client-side Web Engineering 2 From XML to Client-side Mashups SWE 642, Spring 2008 Nick Duan February 6, 2008 1 What is XML? XML extensible Markup Language Definition: XML is a markup language for documents
More informationHTML HTML. Chris Seddon CRS Enterprises Ltd 1
Chris Seddon seddon-software@keme.co.uk 2000-12 CRS Enterprises Ltd 1 2000-12 CRS Enterprises Ltd 2 Reference Sites W3C W3C w3schools DevGuru Aptana GotAPI Dog http://www.w3.org/ http://www.w3schools.com
More informationJQUERYUI - SORTABLE. axis This option indicates an axis of movement "x" is horizontal, "y" is vertical. By default its value is false.
JQUERYUI - SORTABLE http://www.tutorialspoint.com/jqueryui/jqueryui_sortable.htm Copyright tutorialspoint.com jqueryui provides sortable method to reorder elements in list or grid using the mouse. This
More information,,..,,, $::. % 'c0s ts l:j(or::k. '"'e 250. iii/ ,,. OS 10 LJ JAN 'SO FE8. MYINSIGHT Doshboords & Reports. User Guide D2 Client
,,..,,, / 'c0s ts l:j(or::k 350 300 $::. % i,,. '"'e 250. iii/ 150 OS 10 'SO 0 LJ JAN FE8 Av MYINSIGHT Doshboords & Reports User Guide D2 Client 1Chapter 1 VERSION HISTORY Date Changes Version number 7-12-2015
More informationMapInfo Stratus. Version 41. MapInfo Stratus Administration Guide
MapInfo Stratus Version 41 MapInfo Stratus Administration Guide Contents Chapter 1: Getting Started...7 Signing In and Out...8 Home...8 Version Number and Build Number...9 Using MapInfo Stratus Administration
More information