generating html format reports for travel demand models may 18, 2009 chunyu lu gannett fleming, inc
TRANSCRIPT
Generating HTML Format Reports for Travel Demand Models
May 18, 2009May 18, 2009
Chunyu LuChunyu Lu
Gannett Fleming, Inc.Gannett Fleming, Inc.
Outline
2
IntroductionIntroduction
Generating HTML Formatted Reports Generating HTML Formatted Reports
Demonstration of CFRPM Reporting Demonstration of CFRPM Reporting
New Technology New Technology
What Can be Improved? What Can be Improved?
Background
In 2004 FDOT chose to begin converting all In 2004 FDOT chose to begin converting all models from TranPlan to Cube Voyager.models from TranPlan to Cube Voyager.
Cube Voyager scripts were used to replicate the Cube Voyager scripts were used to replicate the models procedures.models procedures.
Mini-validations were required to meet the FDOT Mini-validations were required to meet the FDOT validation criteria at the regional level.validation criteria at the regional level.
Standard TranPlan reports were left out of model Standard TranPlan reports were left out of model conversions.conversions.
No new standards for reporting model output No new standards for reporting model output were defined.were defined.
3
Example of TranPlan Model Output
4
FLORIDA D.O.T. CFRPM4_00 PAGE NO. 301 FSUTMS P1= HBW, P2= HBSH, P3= HBSR, P4= HBO, P5= NHB DATE 17JAN07 VER 5.50 P6= LTII, P7= HTII, P8= TAXI, P9= IE TIME 00:42:37 TRIP LENGTH FREQUENCY DISTRIBUTION GRAVITY MODEL -- ITERATION 5 ON ATTRACTIONS PURPOSE NO. 1 PERCENT OF TRIPS 5.0 4.8 4.6 4.4 4.2 * * * 4.0 * * * * * * 3.8 * * * * * * * * 3.6 * * * * * * * * 3.4 * * * * * * * * * * * 3.2 * * * * * * * * * * * * * 3.0 * * * * * * * * * * * * * * 2.8 * * * * * * * * * * * * * * * * 2.6 * * * * * * * * * * * * * * * * * 2.4 * * * * * * * * * * * * * * * * * * 2.2 * * * * * * * * * * * * * * * * * * * * * 2.0 * * * * * * * * * * * * * * * * * * * * * * 1.8 * * * * * * * * * * * * * * * * * * * * * * * 1.6 * * * * * * * * * * * * * * * * * * * * * * * * * * * 1.4 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 1.2 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 1.0 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 0.8 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 0.6 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 0.4 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 0.2 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MINUTES 1 5 10 15 20 25 30 35 40 45 50 55 60
Modeling ReportsModeling Reports
Cube ReportsCube Reports Developed by CitilabsDeveloped by Citilabs Built-in component that has limited functionalityBuilt-in component that has limited functionality
Crystal ReportsCrystal Reports Recommended by FDOT Central Office to produce Recommended by FDOT Central Office to produce
model output but did not provide flexibilility for model model output but did not provide flexibilility for model usersusers
Customized plain text reports Customized plain text reports HTML formatted model reports HTML formatted model reports
Developed by Gannett FlemingDeveloped by Gannett Fleming Graphic components including table, maps and chartsGraphic components including table, maps and charts
5
Outline
6
Background IntroductionBackground Introduction
Generating HTML Formatted Reports Generating HTML Formatted Reports
Demonstration of CFRPM Reporting Demonstration of CFRPM Reporting
New Technology New Technology
What Can be Improved? What Can be Improved?
Generating HTML Format Report The new report must meet the following requirements:The new report must meet the following requirements:
The report has to be generated from the Cube scripts.The report has to be generated from the Cube scripts. The report has to be easily formatted and user friendly.The report has to be easily formatted and user friendly. The report should not request the model users to purchase any The report should not request the model users to purchase any
additional software.additional software. The report should offer graphics including bar charts and line The report should offer graphics including bar charts and line
charts.charts. The HTML based reporting mechanism was initiated The HTML based reporting mechanism was initiated
by the model validation team and a software by the model validation team and a software development team was therefore assembled.development team was therefore assembled.
The consultant realized that there were additional The consultant realized that there were additional efforts required to develop graphical functionality.efforts required to develop graphical functionality.
7
HTML Introduction
HTML - Hyper Text Markup Language:HTML - Hyper Text Markup Language: well-known and predominantwell-known and predominant markup language for web markup language for web
pagespages suitable for the world wide websuitable for the world wide web accessible by many web browsers including Internet accessible by many web browsers including Internet
Explorer, Mozilla Firefox, and Google ChromeExplorer, Mozilla Firefox, and Google Chrome HTML is a text based document easily editable in HTML is a text based document easily editable in
any text editing software.any text editing software. Cube Voyager scripts can be used to produce Cube Voyager scripts can be used to produce
basic text output files, and therefore can produce basic text output files, and therefore can produce web pages as long as it follows the HTML web pages as long as it follows the HTML standards.standards.
8
Technical Challenges
Dynamic information exchange Dynamic information exchange CGI (Common Gateway Interface)CGI (Common Gateway Interface) ASP (Active Server Pages)ASP (Active Server Pages) Cube Voyager scriptsCube Voyager scripts
Graphics also needed to be generated for better Graphics also needed to be generated for better visualization:visualization: Bar Charts: Trip Productions by Trip PurposeBar Charts: Trip Productions by Trip Purpose Line Charts: Trip Length DistributionLine Charts: Trip Length Distribution Maps: Area Type, Facility Type, and Number of Lane Maps: Area Type, Facility Type, and Number of Lane
DisplayDisplay The reporting system should act as a stand alone The reporting system should act as a stand alone
system.system.
9
Resolutions
Cube Voyager scripts is used to generate HTML Cube Voyager scripts is used to generate HTML reports:reports: Opened directly by any web browserOpened directly by any web browser Databases including input datasets and output model Databases including input datasets and output model
results are also generated and downloadable from the results are also generated and downloadable from the webpagewebpage
The graphical components are generated in SVG The graphical components are generated in SVG (Scalable Vector Graphics) format.(Scalable Vector Graphics) format. Dynamic information is exchanged using Dynamic information is exchanged using
Voyager scripts, no web server is required.Voyager scripts, no web server is required. A Cascading Style Sheets (CSS) file is used for A Cascading Style Sheets (CSS) file is used for
color designed schemes and reporting formats.color designed schemes and reporting formats.
10
Understanding XML and SVG
Similar with HTML, XML (Extensible Markup Similar with HTML, XML (Extensible Markup Language) is a general purpose specification for Language) is a general purpose specification for creating custom markup languages. It is used in the creating custom markup languages. It is used in the current model for two purposes:current model for two purposes:
Display large amount of information with acceptable refresh Display large amount of information with acceptable refresh speeds;speeds;
Offer graphical components to generate SVG.Offer graphical components to generate SVG. XLST (Extensible Stylesheet Language XLST (Extensible Stylesheet Language
Transformations (XSLT) is a XML-based language Transformations (XSLT) is a XML-based language used for the transformation of XML documents to SVG used for the transformation of XML documents to SVG graphics.graphics.
SVG viewer, a free software offered by Adobe is SVG viewer, a free software offered by Adobe is required to display the SVG graphics in web browsers.required to display the SVG graphics in web browsers.
11
Understanding SVG Graphics
Scalable Vector Graphics (SVG) is a family of Scalable Vector Graphics (SVG) is a family of specifications of XML-based file formats used for specifications of XML-based file formats used for describing two-dimensional vector graphics, both describing two-dimensional vector graphics, both static and dynamic. In the current model, only static and dynamic. In the current model, only static SVGs are generated.static SVGs are generated.
Only Internet Explorer can display the SVGs Only Internet Explorer can display the SVGs generated by the model. Mozilla’s Firefox can generated by the model. Mozilla’s Firefox can display the tables, but the graphics display display the tables, but the graphics display improperly.improperly.
12
Generating Web Content from Cube
13
Cube Voyager
XML
XSLT
SVG (Graphic)Text Content Map Content
HTML Output
Example of XML and XSLT Format
14
<chart> <title>External Trips by Station</title> <extent>40000</extent><bar>20</bar> <height>320</height> <width>550</width> <x-axis-title>External Station (Trips > 5000)</x-axis-title><axis-title-font-size>11</axis-title-font-size> <title-font-size>12</title-font-size> <font-size>11</font-size> <axis-font-size>11</axis-font-size> <item> <label>12528</label> <col> 4506</col> <data>12528</data> </item></chart>
<xsl:variable name="maxValue" select="extent"/><xsl:variable name="tableTitle" select="title"/><xsl:variable name="width" select="width"/><xsl:variable name="height" select="height"/><xsl:variable name="xAxisTitle" select="x-axis-title"/><xsl:variable name="yAxisTitle" select="y-axis-title"/><xsl:variable name="axisTitleFontSize" select="axis-title-font-size"/><xsl:variable name="fontSize" select="font-size"/><xsl:variable name="axisFontSize" select="axis-font-size"/><xsl:variable name="titleFontSize" select="title-font-size"/>
XML Example
XSLT Example
Example of SVG (Bar Charts)
15
Outline
16
Background IntroductionBackground Introduction
Generating HTML Formatted Reports Generating HTML Formatted Reports
Demonstration of CFRPM Reporting Demonstration of CFRPM Reporting
New Technology New Technology
What Can be Improved? What Can be Improved?
Demonstration of HTML Reporting The HTML reporting mechanism was The HTML reporting mechanism was
implemented into the following regional planning implemented into the following regional planning models:models: TBRPM (Tampa Bay Regional Planning Model)TBRPM (Tampa Bay Regional Planning Model) WCFRPM (West Central Florida Regional Planning WCFRPM (West Central Florida Regional Planning
Model) Model) CFRPM (Central Florida Regional Planning Model)CFRPM (Central Florida Regional Planning Model)
The CFRPM reports are demonstrated since they The CFRPM reports are demonstrated since they are the most recent versions.are the most recent versions.
17
Setup Cube Environment
18
Launch the Web Reports in IE
19
Demonstration of CFRPM WebPages
20
Demonstration of Download Datasets
21
Demonstration of Tables
22
Demonstration of Bar Charts
23
Demonstration of Distribution Charts
24
Demonstration of Area Type Map
25
Demonstration of Congested Time Map
26
Outline
27
Background IntroductionBackground Introduction
Generating HTML Formatted Reports Generating HTML Formatted Reports
Demonstration of CFRPM Reporting Demonstration of CFRPM Reporting
New Technology New Technology
What Can be Improved? What Can be Improved?
New Technologies
SVG is used in the current model structure, but it SVG is used in the current model structure, but it is a software that is being phased out. The is a software that is being phased out. The graphics could be re-produced using Microsoft’s graphics could be re-produced using Microsoft’s Silverlight or Adobe’s Flash Player. Silverlight or Adobe’s Flash Player.
Java scripts or some other programmable script Java scripts or some other programmable script languages could be used to make better web languages could be used to make better web page displays as needed for other reporting page displays as needed for other reporting needs such as for corridor validation.needs such as for corridor validation.
More GIS based web components will be More GIS based web components will be considered including dynamic map generation of considered including dynamic map generation of model results.model results.
28
Outline
29
Background IntroductionBackground Introduction
Generating HTML Formatted Reports Generating HTML Formatted Reports
Demonstration of CFRPM Reporting Demonstration of CFRPM Reporting
New Technology New Technology
What Can be Improved? What Can be Improved?
What can be Improved
The user interface is user friendly but it is very The user interface is user friendly but it is very difficult to generate them using Cube Voyager difficult to generate them using Cube Voyager scripts.scripts.
Refresh speeds are fairly slow.Refresh speeds are fairly slow. No ideal solution for printing the HTML format No ideal solution for printing the HTML format
reports.reports.
30