it-swarm.com.de

Verwendung von Python und Matplotlib auf Android

Gibt es eine Möglichkeit, Python 2.7.x + matplotlib auf einem Android-Tablet einzurichten, damit Sie einfachen Standard-Python-Code ausführen können? Ich möchte gerne die gleichen Skripts ausführen, die ich auch auf meinem Linux-Desktop ausführen kann. Dies ist nur für meinen eigenen Gebrauch und ich muss den Code nicht an Dritte weitergeben.

Kann man dieses Skript als konkretes Beispiel ausführen?

import numpy as np
import matplotlib.pyplot as plt

x = np.arange(0, 5, 0.1);
y = np.sin(x)
plt.plot(x, y)
27
marshall

Ist es einfach, nein.

Kann es gemacht werden Ja. Ich glaube, dass ein erfahrener Python/Android-Entwickler dies in zwei bis acht Stunden erledigen kann. Dies ist eine seltene und komplexe Anforderung.

Warum kann ich das machen? Dieses Beispiel: http://matplotlib.org/examples/pylab_examples/webapp_demo.html

Wenn Sie eine andere Bibliothek verwenden und nicht für Daten ohne Live-Hardware abstrahiert werden, zeigt mir dieses Beispiel, dass SL4A webbasierte Grafiken ausführen kann: http://www.smartphonedaq.com/Android-python-ecg.page

Wenn Sie nun native GUI-Grafiken in Android sprechen - dann konzentriere ich mich viel zu sehr auf die Webmethoden der Veröffentlichung mit SL4A;)

4

Pydroid ist ideal für Matplotlib für Android, unterstützt Numpy und viele andere Bibliotheken:

Pydroid für Python 2.7

Pydroid 3 für Python 3.6

1
Sandor Rado

Ist es einfach? Ja! Pydroid 3 Sie können fast jede Bibliothek installieren, von der Sie gehört haben. 

1
Miladiouss

Es gibt eine App namens Gnuroot, mit der Sie eine Art chroot (proot) ausführen können, in der Sie eine Linux-Distribution wie debian, archlinux installieren können.
Für das GUI gibt es die Option, einen VNC-Server für einen X-Server auszuführen und eine Android-VNC-Client-App zum Anzeigen des Bildschirms zu verwenden. 

Ich benutze die nicht-gui-Version von gnuroot und es funktioniert gut. Ich habe jetzt ein Befehlszeilen-Debian-Wheezy auf dem Android Lollipop-Arm. Eine Kleinigkeit, die ich vermisse, ist Armhf (Hardware-Gleitkomma, die der Prozessor meines nexus7 ausführen kann) anstelle von Armel (Software-Gleitkomma).

1
yoghurt

Ja, das geht auch ohne root. Sie benötigen die termux-App. Im Grunde handelt es sich dabei um einen Terminalemulator mit einer vollständigen Linux-Umgebung. Über apt install python können Sie beispielsweise python installieren. 

Die Hauptseite ist hier und ist natürlich über den Standardmarkt verfügbar. (Das Termux-Wiki ist ein hilfreicher Ort.)

1
Alf

ich habe jemals von qpython gehört? http://qpython.com/ Ich persönlich habe es nie benutzt, aber mein Kollege war recht praktisch damit Vielleicht möchten Sie sich das mal anschauen

0
Musti Hakan

Sie können einen billigen Server (Raspberry Pi?) Einrichten und eine SSH-Verbindung dazu herstellen, um über eine Vnc-Viewer-Android-App oder die Shell auf die volle Python-Funktionalität zuzugreifen

0
nagordon

Hier ist der Code. Dies funktioniert nach der Installation von GNURoot Debian, wie Sie gesagt haben. Nur ein Detail: Mein Diagramm wird direkt in eine .png-Datei exportiert:

from pylab import *
import matplotlib.pyplot as plt
plt.switch_backend('agg')
x = linspace(-5, 5, 100)
y = sin(x)
plot(x, y)
out_png = 'out_file.png'
plt.savefig(out_png, dpi=150)
0
Steph

Ich habe irgendwo gelesen, dass Scipy und Matplotlib nicht für Android kompiliert werden können

https://code.google.com/p/Android-scripting/issues/detail?id=260

0
darmat

Sie können MathSys versuchen. Es ist ein Wrapper um Python und es enthält Matplotlib.

Leider ist MathSys ziemlich kompliziert und es handelt sich um eine Alpha-Version. An einer Betaversion arbeitet offenbar niemand. Sie möchten komplizierten Code in eine externe Datei schreiben. import funktioniert in MathSys einwandfrei.

0
Lev

Bei der Suche nach numpy Android bei Google fand ich eine sehr schöne Bibliothek . Ich denke, es könnte hilfreich sein. 

0
sri