Download presentation
Presentation is loading. Please wait.
Published byStephen Washington Modified over 9 years ago
1
Conceptual Statistics Through Graphing Wen-hao Zeng Brian Nemsick Lijun Zhu Ricky Liou Ethan Hayes Drew Boatwright
2
2 Introduction Goal of the project –Create a way for students and instructors to view statistics on concepts through graphing Motivation –Currently there is no option to see statistics based on concepts –Valuable information
3
3 So how do we start? Research –Two Methods Jquery/Highcharts Python Division of Labor
4
4 Highcharts Introduction Highcharts is a platform for creating Interactive Javascript Charts.
5
5 Benefits of Highcharts Easy implementation on webpages Multiple types of graphs Highly Customizable Full API Many Demos
6
6 Getting The Data X-axis –Concepts in an assignment Y-axis –Numerical information
7
7 X-axis Con_per_assign.php –Looks at tags(concepts) for questions in an assignment and stores those concepts in a table
8
8 Y-axis Two initial methods –Ethan’s in-line processing (mySQL queries) –Drew’s post-processing (Parsing in PHP) Comparison of the two methods –Ethan’s: 8 seconds O(1) –Drew’s: 60+ seconds O(n 2 )
9
9 Implementation Chart.php –Called through ITS_jquery GET variables passed through –Contains multiple graph views Student/Instructor/Stacked/Percentage
10
10 Implementation Screen.php
11
11 Additional Option for Instructor Profile.php –View Graph for either whole semester or Individual Student
12
12 Python Introduction Python is a useful calculation and data analysis tool. However, ITS wasn’t compatible with Python In order to allow future be based on Python, fundamental works must be done Producing a student summary graph is a good objective for the fundamental work
13
13 What have we achieved Successful installation of several useful module for python, both on local and dev5 –Matplotlib –MySQLdb Successful communication between PHP and Python –jpgraph Successful production of student summary graph using real student data from MySQL
14
14 Python Plotting Implementation Use Python to extract the data from MySQL tables. Use Python to filter attempted concepts and to sort tags alphabetically. Plot tags and data with Matplotlib storing the result in a PNG file Use HTML/PHP to display the PNG file. Have PHP pass the necessary inputs to generate the appropriate graphs.
15
15 Python Plotting Implementation PHP Student/Semester & assignment Python MySQL Query Display PNG Plot Matplotlib Save PNG Plot Tags & Data
16
16 Python Plotting : Example Student Plot
17
17 Python Plotting : Example Instructor Plot
18
18 PHP Plotting Implementation Considering PHP was unable to use portions of the Matplotlib module in Python script on dev5 due to a unsolved dependency issue, an alternative approach to the original plan was used to produce the graphs. –The burden of producing the graph is shifted to PHP side –Avoid using Matplotlib to achieve PHP and Python communication.
19
19 PHP Plotting Implementation PHP Student & assignment Python Tags & Data MySQL QueryTags & Data Graph Produce
20
20 PHP Plotting Implementation
21
21 Results With these results… – We have two methods of graphing the statistical information for concepts –We have a way of communicating with Python through PHP.
22
22 Future Works Resolve the minor dependency issue with Matplotlib in PHP. Finding even more efficient queries to pull the Y- axis data.
23
23 Questions?
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.