0.1.2 • Published 9 years ago

pyextjs v0.1.2

Weekly downloads
79
License
-
Repository
github
Last release
9 years ago

PyExtJS

(Python Extension Packages in Javascript)

Contents

  • What is PyExtJs?
  • Installation
  • Latest source code
  • Bug reports
  • Wiki Array creation routines Array manipulation routines * Mathematical functions
  • Performance

What is PyExtJs?

Python Extension Packages in Javascript is open-source implementation of some common libraries used in the scientific python programming.
The main goal of this project is to improve migration of python language to javascript.

License

Copyright 2016 Alvaro Fernandez

License: MIT/X11

Installation

on node.js

	$ npm install pyextjs  
	> require('pyextjs');

	> numpy.linspace(2.0,3.0,5);

on the browser

Just include the following libraries in your html.

<!doctype html>
<html>
  <head>
    <script type="text/javascript" src="../js/ss.js"></script>
    <script type="text/javascript" src="../js/Numpy.js"></script>
    <script type="text/javascript" src="../js/PolySolve.js"></script>
    <script type="text/javascript" src="../js/Scipy.js"></script>
    <script type="text/javascript">

       // Use Numpy & Scipy like python in javascript

       function ready() {
           var ls = numpy.linspace(2.0,3.0,5);
       }

    </script>
  </head>
</html>

Latest source code

https://github.com/fernandezajp/PyExtJs

Bug reports

https://github.com/fernandezajp/PyExtJs/issues

##Performance

This is very important, the test was executed in a MacBookPro i5

The python Code:

import time
import numpy

def test():
    x = numpy.array([0.0, 1.0, 2.0, 3.0,  4.0,  5.0])
    y = numpy.array([0.0, 0.8, 0.9, 0.1, -0.8, -1.0])

    start = time.time()
    for num in range(1,10000):
        numpy.polyfit(x, y, 3)
    end = time.time()

    microsecs = end - start
    print microsecs * 1000

test()
function test() {
    x = [0.0, 1.0, 2.0, 3.0,  4.0,  5.0];
    y = [0.0, 0.8, 0.9, 0.1, -0.8, -1.0];

    var start = +new Date();
    for (var i=0;i<10000;i++)
        numpy.polyfit(x, y, 3)
    var end =  +new Date();
    var diff = end - start;
    alert(diff);
}

test();

Python: 1604 milliseconds
Javascript: 14 milliseconds

Javascript! Very fast!!!