Использование python и matplotlib для Android
Есть ли способ настроить python 2.7.x + matplotlib на планшет Android, чтобы вы могли запускать простой стандартный код python? Я хотел бы иметь возможность запускать те же скрипты, которые я запускаю на своем рабочем столе Linux. Это только для моего собственного использования, и мне не нужно распространять код кому-либо еще.
В качестве конкретного примера можно ли запустить этот script?
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(0, 5, 0.1);
y = np.sin(x)
plt.plot(x, y)
Ответы
Ответ 1
Легко ли, нет.
Можно ли это сделать? Да. Я считаю, что опытный разработчик Python/Android может сделать это за 2-8 часов работы. Это редкий и сложный запрос.
Почему я думаю, что это можно сделать? Этот пример: http://matplotlib.org/examples/pylab_examples/webapp_demo.html
Используя другую библиотеку и не абстрагируясь для данных без живого оборудования, этот пример показывает мне, что SL4A может делать веб-графику:
http://www.smartphonedaq.com/android-python-ecg.page
Теперь, если вы разговаривали с графикой графического интерфейса на Android, тогда я слишком много ориентируюсь на веб-методы публикации с помощью SL4A;)
Ответ 2
Существует приложение под названием Gnuroot, которое позволяет запускать своего рода chroot (proot), где вы можете установить дистрибутив Linux, например debian, archlinux...
Для gui существует возможность запускать vncserver для X-сервера и использовать некоторое клиентское приложение android vnc для отображения экрана.
Я использую не-gui-версию gnuroot, и она работает хорошо. Теперь у меня есть командная строка debian wheezy на руке лебеди. Одна незначительная вещь, которую я пропустил, - armhf (аппаратная плавающая точка, которую может выполнять мой процессор nexus7) вместо armel (программная плавающая точка).
Ответ 3
Да, это можно сделать, даже без root. Вам нужно приложение termux
, в основном это эмулятор терминала с полной Linux-средой и через apt install python
, например, вы можете установить python
.
Основная веб-страница здесь, и она, конечно же, доступна через стандартный рынок. (termux wiki - полезное место.)
Ответ 4
когда-либо слышал о qpython?
http://qpython.com/
я лично никогда не использовал его, но мой коллега был очень кстати с ним
поэтому вы можете посмотреть на это
Ответ 5
Я где-то читал, что scipy и matplotlib не могут быть скомпилированы для android, кто-то сделал это для numpy, хотя
https://code.google.com/p/android-scripting/issues/detail?id=260
Ответ 6
Вы можете настроить дешевый сервер (Raspberry Pi?) и создать для него ssh-соединение для доступа к полной функциональности python через приложение vnc viewer android или оболочку
Ответ 7
Вы можете попробовать MathSys. Это оболочка вокруг Python, и внутри нее есть matplotlib.
К сожалению, MathSys довольно запутан, и это альфа-версия. По-видимому, никто не работает над бета-версией. Вы захотите написать любой сложный код во внешнем файле. import
отлично работает в MathSys.
Ответ 8
При поиске numpy android
в Google я нашел очень приятную library. Думаю, это может быть полезно.
Ответ 9
Вот код, это работает после установки GNURoot Debian, как вы сказали. Просто деталь: мой график экспортируется непосредственно в файл .png
:
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)
Ответ 10
Pydroid отлично подходит для Matplotlib на Android, поддерживает Numpy и многие другие библиотеки:
Pydroid для Python 2.7
Pydroid 3 для Python 3.6
Ответ 11
Используйте оболочку linux, у меня есть git python и pip, установленные на моем телефоне. Я использовал gnuroot в игровом магазине. Вы можете apt-get install python pip оттуда