Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 21, 2012 20:01:51

4kpt
От: Харьков
Зарегистрирован: 2010-11-03
Сообщения: 998
Репутация: +  63  -
Профиль   Отправить e-mail  

Tkinter формула

sp3

sp3
Берешь canvas и рисуешь что угодно. В том числе и текст.
Каким-таким образом??? Вроде в canvas нет объекта - формула. Можно отдельно текст нарисовать, но при изменении чисел, нужно его перестраивать (ты не это случайно имел ввиду).



Отредактировано 4kpt (Ноя. 21, 2012 20:40:06)

Офлайн

#2 Ноя. 21, 2012 20:49:10

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

Tkinter формула

минилатех есть в matplotlib

import pylab 
fig = pylab.figure()#figsize=(5,5)
ax = pylab.axes([0,0,1,1])
ax.text(0.5,0.5,r"$\frac{\Sigma_{as}}{1+s}$",fontsize=50)
pylab.savefig("aa.png")



Офлайн

#3 Ноя. 21, 2012 20:54:34

4kpt
От: Харьков
Зарегистрирован: 2010-11-03
Сообщения: 998
Репутация: +  63  -
Профиль   Отправить e-mail  

Tkinter формула

doza_and
минилатех есть в matplotlib
Охренеть…
Где найти примеры синтаксиса, который Вы использовали:
ax.text(0.5,0.5,r"$\frac{\Sigma_{as}}{1+s}$",fontsize=50)
В документации он есть???
Кстати, синтаксис чем-то напоминает OpenOffice…



Офлайн

#4 Ноя. 21, 2012 22:51:19

jeka7
От: Беларусь, Орша
Зарегистрирован: 2012-10-06
Сообщения: 31
Репутация: +  0  -
Профиль   Отправить e-mail  

Tkinter формула

Круто!!! А можно например, чтобы s задать как переменную?

Офлайн

#5 Ноя. 21, 2012 23:46:07

4kpt
От: Харьков
Зарегистрирован: 2010-11-03
Сообщения: 998
Репутация: +  63  -
Профиль   Отправить e-mail  

Tkinter формула

Есть два варианта: отображать в отдельном окне или через сохранение в файл. В результате можно разработать метод обновления и вывода фотографии (вывод с новыми, обновленными данными)…
В первом случае нужно использовать вместо

pylab.savefig("aa.png")
Такую строку. В результате, на экране появляется формула.
pylab.show()



Отредактировано 4kpt (Ноя. 21, 2012 23:48:02)

Офлайн

#6 Ноя. 22, 2012 01:12:16

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10015
Репутация: +  857  -
Профиль   Отправить e-mail  

Tkinter формула

4kpt
Кстати, синтаксис чем-то напоминает OpenOffice…
wiki. TeX
wiki. LaTeX
эта штука появилась задолго до OpenOffice

doza_and
ax.text(0.5,0.5,r"$\frac{\Sigma_{as}}{1+s}$",fontsize=50)
ax.text(0.5,0.5,r"$\frac{1}{2}$",fontsize=50)
у меня не выводит: дробь выводится, а вместо цифр буквы i и M
правда, при сохранении и ошибки валятся типа
>>> pylab.savefig("aa.png")
/usr/lib/python2.7/site-packages/matplotlib/font_manager.py:1242: UserWarning: findfont: Font family ['STIXGeneral'] not found. Falling back to Bitstream Vera Sans
(prop.get_family(), self.defaultFamily[fontext]))
/usr/lib/python2.7/site-packages/matplotlib/font_manager.py:1252: UserWarning: findfont: Could not match :family=Bitstream Vera Sans:style=normal:variant=normal:weight=normal:stretch=normal:size=12. Returning /usr/share/fonts/thai-scalable/Waree-Oblique.ttf
UserWarning)



Офлайн

#7 Ноя. 22, 2012 01:43:54

jeka7
От: Беларусь, Орша
Зарегистрирован: 2012-10-06
Сообщения: 31
Репутация: +  0  -
Профиль   Отправить e-mail  

Tkinter формула

Как можно сделать чтобы в строке

ax.text(0.5,0.5,r"$\frac{\Sigma_{as}}{1+s}$",fontsize=50)
s была как переменная, то есть вставляла в формулу не символ s, а его значение.
Возможно ли это?

Офлайн

#8 Ноя. 22, 2012 09:25:31

4kpt
От: Харьков
Зарегистрирован: 2010-11-03
Сообщения: 998
Репутация: +  63  -
Профиль   Отправить e-mail  

Tkinter формула

py.user.next
У меня по формуле

ax.text(0.5,0.5,r"$\frac{1}{2}$",fontsize=50)
Все выводит. Дробь 1/2. Могу скинуть файл результата или скрин экрана. Что-то у Вас бока с matplotlib.

P.S. Ось - ХР.



Отредактировано 4kpt (Ноя. 22, 2012 09:25:57)

Офлайн

#9 Ноя. 22, 2012 09:29:54

4kpt
От: Харьков
Зарегистрирован: 2010-11-03
Сообщения: 998
Репутация: +  63  -
Профиль   Отправить e-mail  

Tkinter формула

jeka7
Естественно…
Только если надо обновлять значения при рассчетах рационально будет разработать механизм для обновления значения из pgn файла. Т.е. один модуль формирует формулу и сбрасывает ее в фото, а другой из этого фото выводит…



Офлайн

#10 Ноя. 22, 2012 09:31:08

4kpt
От: Харьков
Зарегистрирован: 2010-11-03
Сообщения: 998
Репутация: +  63  -
Профиль   Отправить e-mail  

Tkinter формула

py.user.next
Вроде пишет в сообщении, что не может обнаружить шрифтов…
Ошибка, когда я попробовал навязать ему шрифт TimeNewRomain

C:\Python27\lib\site-packages\matplotlib\font_manager.py:1218: UserWarning: findfont: Font family ['TimeNewRomain'] not found. Falling back to Bitstream Vera Sans
(prop.get_family(), self.defaultFamily[fontext]))
Рационально явно указывать шрифты, которые есть в системе (как в Tkinter).
ax.text(0.5,0.5,r"$\frac{1}{2}$",fontsize=50, fontname = 'TimesNewRomain')



Отредактировано 4kpt (Ноя. 22, 2012 10:02:20)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version