Hoje a idéia é simples: montei alguns gráficos usando as funções trigonométricas e recursos nativos do web browser através do Jquery, funções Math e a biblioteca Flot.
A tarefa em si já não é muito difícil, mas com as bibliotecas citadas ser torna coisa de criança :-). Isto é, você não precisa de softwares matemáticos complexos para renderizar.
A Biblioteca Math
A biblioteca Math do JavaScript fornece uma variedade de funções matemáticas, incluindo operações trigonométricas, logarítmicas e de exponenciação, assim como constantes como pi e e.
Ela também inclui funções para arredondamento, geração de números aleatórios e operações de mínimo e máximo. A biblioteca Math é uma parte nativa do JavaScript e portanto não precisa ser importada ou instalada.
Por exemplo, olhe as propriedades e métodos da biblioteca de acordo com o site w3schools:
Propriedades da Math
Property | Description |
---|---|
E | Returns Euler’s number (approx. 2.718) |
LN2 | Returns the natural logarithm of 2 (approx. 0.693) |
LN10 | Returns the natural logarithm of 10 (approx. 2.302) |
LOG2E | Returns the base-2 logarithm of E (approx. 1.442) |
LOG10E | Returns the base-10 logarithm of E (approx. 0.434) |
PI | Returns PI (approx. 3.14159) |
SQRT1_2 | Returns the square root of 1/2 (approx. 0.707) |
SQRT2 | Returns the square root of 2 (approx. 1.414) |
Métodos da Math
Method | Description |
---|---|
abs(x) | Returns the absolute value of x |
acos(x) | Returns the arccosine of x, in radians |
asin(x) | Returns the arcsine of x, in radians |
atan(x) | Returns the arctangent of x as a numeric value between -PI/2 and PI/2 radians |
atan2(y,x) | Returns the arctangent of the quotient of its arguments |
ceil(x) | Returns x, rounded upwards to the nearest integer |
cos(x) | Returns the cosine of x (x is in radians) |
exp(x) | Returns the value of Ex |
floor(x) | Returns x, rounded downwards to the nearest integer |
log(x) | Returns the natural logarithm (base E) of x |
max(x,y,z,…,n) | Returns the number with the highest value |
min(x,y,z,…,n) | Returns the number with the lowest value |
pow(x,y) | Returns the value of x to the power of y |
random() | Returns a random number between 0 and 1 |
round(x) | Rounds x to the nearest integer |
sin(x) | Returns the sine of x (x is in radians) |
sqrt(x) | Returns the square root of x |
tan(x) | Returns the tangent of an angle |
Fonte: http://www.w3schools.com/jsref/jsref_obj_math.asp
Jquery e Flot
A biblioteca Flot é uma biblioteca JavaScript para plotagem de gráficos. Ela permite, por exemplo, criar gráficos de linhas, barras, pontos, áreas, séries temporais e outros tipos de gráficos de forma fácil e rápida, usando dados fornecidos em formato JSON ou array.
A biblioteca tem suporte a rótulos, legendas, zoom, pan e outras funcionalidades avançadas e é altamente personalizável através de plugins e opções de configuração.
A biblioteca Flot é open-source e ser facilmente integrada com Jquery e incluída em projetos web para adicionar recursos de plotagem de gráficos. Para maiores informações, visite a página oficial do projeto.
Só para ilustrar, veja alguns gráficos de funções:
Cos, sin, tan, cotan, sec, cossec:
Parabola, Parabola (inv), Cubic, Log, Abs:
cos * (1/x) :
cos(1/sin(x)) , sin(1/cos(x)):
O uso das funções matemáticas nos softwares
A matemática é utilizada em diversas áreas de desenvolvimento de software, algumas delas incluem por exemplo:
- Inteligência artificial e aprendizado de máquina: não apenas os algoritmos de aprendizado de máquina, outros métodos de inteligência artificial são baseados em matemática.
- Criptografia: a criptografia usa conceitos matemáticos para garantir a segurança de dados e comunicações.
- Processamento de imagem: a matemática é usada para processar e interpretar imagens, como por exemplo em reconhecimento de rostos e objetos.
- Modelagem e simulação: a matemática certamente é usada para modelar e simular sistemas complexos em aplicativos como engenharia, finanças e jogos.
- Análise de dados: métodos matemáticos são usados para coletar, processar e interpretar grandes conjuntos de dados em aplicativos como business intelligence e análise de dados científicos.