Skip to main content

kivy based / Android optimized front-end for simple_plotter

Project description

simple-plotter4a
================

*simple-plotter4a* (i.e. simple-plotter for Android) is an alternative front-end to simple-plotter_ based on kivy_
and the `kivy-garden/graph`_ module.
While it is a cross-platform (completely written in python) its main purpose is to provide a GUI for mobile/touch
devices.

*simple-plotter4a* can be compiled into a stand-alone APK via buildozer_ / `python-for-android`_ and thus requires no
further software installed to run on your Android device.

.. image:: https://simple-plotter.readthedocs.io/en/latest/_images/screen_shot_android.png
:scale: 25 %

For usage instructions see:
https://simple-plotter.readthedocs.io/en/latest/user_guide.html

*simple-plotter4a* is released under the GPLv3 license - for details see NOTICE and LICENSE file.
The binary version (e.g. Android APK) will be linked and/or bundled with 3rd party libraries. The copyright disclaimers
and licenses of the 3rd party components can be found in the 'Licenses' folder or in the documentation in the licenses
chapter:

https://simple-plotter.readthedocs.io/en/latest/license.html#simple-plotter4a-binary-releases-android

Installing on desktop and Android
---------------------------------

If you just want ot use the software please see the `Getting started`_ chapter in the *simple_plotter* documentation.


Compiling for Android
---------------------

Prerequisites
~~~~~~~~~~~~~

Make sure you have the required components installed - see buildozer_ / `python-for-android`_ documentation for details.

*simple-plotter4a* comes with build instructions for *ant* .
You will need to `Apache ant`_ installed in order to run the build.

Build the APK
~~~~~~~~~~~~~

The *ant* build script (see build.xml) performs some clean-up and version-control tasks before calling the action build
process via *buildozer*.
To build a debug APK simply clone the repository and run *ant* inside:

.. code-block:: bash

git clone https://gitlab.com/thecker/simple-plotter4a.git
cd simple-plotter4a
ant

This will automatically deploy the App to your connected Android device (via adb) and run logcat.

For building (unsigned) release APKs you can run *ant* with the *release* target.

.. code-block:: bash

ant release


Compiling against a modified version of simple-plotter (base)
-------------------------------------------------------------

By default the base modules of simple-plotter_ will be downloaded and installed via pip from the official PyPI
repository.
If you want to compile the APK against a local, modified base version you should do following.

Make sure, that the modified base is cloned from the git.

.. code-block:: bash

cd ~/your_work_dir
git clone https://gitlab.com/thecker/simple-plotter.git

.. note::

If you use a downloaded zip-file, the compile procedure will fail. Since the *simple-plotter* uses setuptools_scm
(which is used retrieve the package version from git tags) the package needs to be installed from a valid git
repository.

Afterwards clone this repo:

.. code-block:: bash

git clone https://gitlab.com/thecker/simple-plotter4a.git
cd simple-plotter4a

Edit the *buildozer.spec* and uncomment the *requirements.source.simple-plotter* line and adjust the path
accordingly - e.g.

::

# (str) Custom source folders for requirements
# Sets custom source for any requirements with recipes
requirements.source.simple-plotter = ../simple_plotter

Now start the compilation process with:

.. code-block:: bash

ant clean-all
ant

Note to run ``ant clean-all`` to remove any pre-built dependencies (this step, which will make *buildozer* recompile all
dependencies is not required, if you just make changes to *simple-plotter4a*).
It should now compile against your local, modified version of simple-plotter.

.. _simple-plotter: https://gitlab.com/thecker/simple-plotter
.. _kivy: https://kivy.org/#home
.. _kivy-garden/graph: https://github.com/kivy-garden/graph
.. _Apache ant: https://ant.apache.org/
.. _buildozer: https://buildozer.readthedocs.io/en/latest/
.. _`python-for-android`: https://python-for-android.readthedocs.io/en/latest/
.. _`Getting started`: https://simple-plotter.readthedocs.io/en/latest/howto.html


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

simple_plotter4a-0.1.0.tar.gz (405.2 kB view details)

Uploaded Source

Built Distribution

simple_plotter4a-0.1.0-py3-none-any.whl (87.9 kB view details)

Uploaded Python 3

File details

Details for the file simple_plotter4a-0.1.0.tar.gz.

File metadata

  • Download URL: simple_plotter4a-0.1.0.tar.gz
  • Upload date:
  • Size: 405.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for simple_plotter4a-0.1.0.tar.gz
Algorithm Hash digest
SHA256 87e251fe4a8c65dbe5c2bf5b148218579324c728cade7a8558bd4543a3ea618d
MD5 2355d6fb0c67d53e91b165bab3c6cb4c
BLAKE2b-256 1d80a8e94929dd5adc4c23168492019a46d0cd8d716e35dc2d1a4dbd15a4b5b4

See more details on using hashes here.

File details

Details for the file simple_plotter4a-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: simple_plotter4a-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 87.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for simple_plotter4a-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dbb9fc198b35172e8cac4a2298d94bc451c08549dce434f5523274048466170f
MD5 6e8ed3edd8b223ae632132da2ca8d97f
BLAKE2b-256 a6ac956c59a850c0ebf2314e66b797ae42f98b5ac249d4fc1c0fca3ea9ce605c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page