Coder Social home page Coder Social logo

ajit3259 / gnuplot.js Goto Github PK

View Code? Open in Web Editor NEW

This project forked from yasasviperuvemba/gnuplot.js

2.0 1.0 0.0 5.96 MB

A Port of GNUPlot to the web

License: MIT License

JavaScript 45.69% HTML 0.05% Makefile 3.36% Shell 0.38% Rich Text Format 0.01% DIGITAL Command Language 0.07% GAP 0.03% C 42.87% PLSQL 0.02% Tcl 0.04% CSS 0.02% Perl 0.14% C++ 2.77% Emacs Lisp 1.71% TeX 1.87% Gnuplot 0.14% PostScript 0.54% IGOR Pro 0.14% Roff 0.06% M4 0.09%
javascript emscripten gnuplot

gnuplot.js's Introduction

gnuplot.js

Port of gnuplot to javaScript using Emscripten

gnuplot is a command-line program that can generate two- and three-dimensional plots of functions, data, and data fits. The program runs on all major computers and operating systems.

Demo

https://ajit3259.github.io/gnuplot.js/

Getting Started

Emscripten is a toolchain for compiling to asm.js and WebAssembly, built using LLVM, that lets you run C and C++ on the web at near-native speed without plugins.

More Info : https://emscripten.org/

Installation guide: https://emscripten.org/docs/getting_started/downloads.html

Installing

For Creating gnuplotasm.js After installing emscripten, add emcc to environment variable

cd emsdk
source ./emsdk_env.sh

Clone this repo

To generate gnuplot.o

cd gnuplot.js
cd src
emconfigure ./configure
emmake make
emmake make install
cp ./src/gnuplot ../gnuplot.o
cd ..

Generate gnuplotasm.js

emcc -s WASM=0 -O2 -s FORCE_FILESYSTEM=1 -s 'EXTRA_EXPORTED_RUNTIME_METHODS=["intArrayFromString","intArraytoString"]' gnuplot.o -o gnuplotasm.js --pre-js pre.js

Contributing

Ajit Kumar
Yasasvi Peruvemba

Authors

[

  • Copyright 1986 - 1993, 1998, 2004 Thomas Williams, Colin Kelley
  • Permission to use, copy, and distribute this software and its
  • documentation for any purpose with or without fee is hereby granted,
  • provided that the above copyright notice appear in all copies and
  • that both that copyright notice and this permission notice appear
  • in supporting documentation.
  • Permission to modify the software is granted, but not the right to
  • distribute the complete modified source code. Modifications are to
  • be distributed as patches to the released version. Permission to
  • distribute binaries produced by compiling modified sources is granted,
  • provided you
    1. distribute the corresponding source modifications from the
  • released version in the form of a patch file along with the binaries,
    1. add special version identification to distinguish your version
  • in addition to the base release version number,
    1. provide your name and address as the primary contact for the
  • support of your modified version, and
    1. retain our contact information in regard to use of the base
  • software.
  • Permission to distribute the released version of the source code along
  • with corresponding source modifications in the form of a patch file is
  • granted with same provisions 2 through 4 for binary distributions.
  • This software is provided "as is" without express or implied warranty
  • to the extent permitted by applicable law. ]

gnuplot.js's People

Contributors

ajit3259 avatar yasasviperuvemba avatar

Stargazers

 avatar  avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.