[python] Vykreslování grafů

Jan Jakubuv jakubuv na gmail.com
Čtvrtek Květen 24 18:58:35 CEST 2007


>
> Ted nevím jestli jsme se pochopili, ale mě nejde o to že by ty čáry vypadaly
> jako úsečky, ale protože všechny grafy nejsou spojené čáry viz
> http://www.blujacker.wz.cz/graf.jpg .

zde je bezpochyby problem v tom ze dana funkce neni spojita. navic
neni v urcitych bodech ani definovana konkretne v bodech kde cos(x) =
0 tj. v bodech [pi/2.0+k*pi for k in xrange(-8,8)] . pri vykreslovani
uvedene funkce uvedenou procedurou mate stesti ze vypocet neni uplne
presny jinak by muselo v danych bodech dojit k deleni nulou a program
by mel vygerenovat vyjimku. pro vykreslovani nespojitych funkci v
bodech nespojitosti je treba pocitat jednostranne limity a v pripade
ze se lisi limita z prava a limita z leva (zde -nekonecno !=
+nekonecno) tak nemuzete udelat caru z jednoho bodu do druheho.

limity by vam melo stacit odhadovat jednoduchym zpusobem: kdyz vam
funkce utece z obrazku nahoru pres horni okraj je limita v danem
+nekonecno, kdyz pod dolni okraj je -nekonecno pokud je hodnota v
obrazku je limitou dana hodnota funkce. timto zpusobem muzete hlidat
kdy a kam vam funkce utece z plochy a kdy a kde se opet vrati. kdyz
vam funkce v jednom bode utece nahoru a v dalsim kroku se objevi dole
tak jednoduse nedelejte usecku a presunte se bez kresleni cary.

uvedenym postupem v podstate vyhledavate body nespojiosti a
rozdelujete definicni obor na intervaly kde je funkce spojita (prosim
za prominuti pokud toto neni zcela korektni - nenajdete asi tak
vsechny body nepojitosti..) nicmene doporucuji nastudovat vybrane
kapitoly matematicke analyzy. skutecne "chytre" programy zrejme
pocitaji derivace atd..

honza.


Další informace o konferenci Python