como desenhar um grafico 2D?

1. como desenhar um grafico 2D?

André freitas
Kyuubi

(usa Kurumin)

Enviado em 06/01/2008 - 01:34h

Bom dia! O meu problema é o seguinte.
Fiz um algoritmo que gera numeros aleatórios segundo uma distribuição de poisson. Estes dados são alocados num vector v. O problema é k eu tenho que mostrar o gráfico desta distribuição mas não sei como fazelo.
Já pesquisei o comando "plot" mas não sei como utilisalo. Agradecia que alguem me pudesse ajudar.

Este é o codigo que fiz até agora (estou compilando no kdevelop) Não é grande coisa porque eu não sou um pro na programação mas axo que esta a fubcionar como o esperado.

#include <stdio.h>
#include <stdlib.h>
#include <limits.h>
#include <time.h>
#include <math.h>

double fatorial(double x);

int main (void){
int i,tam;
float lambeda;
double X,Xf,*v;

srand(time(NULL));

printf ("Quantos numeros pretende gerar?\n");
scanf ("%d", &tam);

printf ("Qual o valor de lambeda?\n");
scanf ("%f",&lambeda);

if( (v = malloc(tam * sizeof(int))) == NULL ) {
printf("Out of memory\n");
exit (1);
}
for (i=0; i<tam; i++){

X=( (float)rand() )/RAND_MAX;
Xf=fatorial(X);
printf("%f \t",Xf); //so para ver se o calculo esta bem feito
v[i]= (((pow (lambeda, X))/Xf)*(pow ((exp)(1), -X)));

}
for (i=0; i<tam; i++)
printf ("\n %f \n",v[i]);// ver o que esta no vector
}

double fatorial(double x){ // calculo do factorial de x, como x não é um numero inteiro, teremos que usar esta formula
double k;
double fat;

k = (x/(exp(1)));
fat = ((sqrt((2*3,14)*x))* pow (k , x));

return(fat);
}








  


2. Re: como desenhar um grafico 2D?

Marcelo Utikawa da Fonseca
utikawa

(usa Ubuntu)

Enviado em 06/01/2008 - 21:30h

O melhor é você utilizar alguma biblioteca para desenhar gráficos, como a SDL.
Ela é bem fácil de usar e existem muitos sites com referências, como o www.unidev.com.br
Boa sorte!


3. Re: como desenhar um grafico 2D?

André freitas
kyuubi

(usa Kurumin)

Enviado em 06/01/2008 - 22:22h

Desculpe mas poderia me dar outro site?
É que não estou conseguindo aceder a esse.




4. Re: como desenhar um grafico 2D?

Fagner Amaral de Souza Candido
f_Candido

(usa Ubuntu)

Enviado em 06/01/2008 - 23:05h

A SDL é ótima, além disso você também pode utilizar a OpenGL. Muito boa para construção de gráfico, além disso também pode trabalhar com a SDL e OpenGL juntas.
Espero ter ajudado,
Abraços


5. Obrigado

André freitas
Kyuubi

(usa Kurumin)

Enviado em 07/01/2008 - 00:33h

Já consegui aceder ao tópico e baixei um tutorial de SDL muito bom. Vou tentar compilar segundo o meu programa. Muito obrigado pelas dicas. Qualquer problema espero que me possam voltar a ajudar.


6. Re: como desenhar um grafico 2D?

André freitas
Kyuubi

(usa Kurumin)

Enviado em 07/01/2008 - 00:40h

Bem depois de ver o tutorial acho k isso não é bem o que preciso. Pois o SDL está direcionado para imagem, jogos 2D e 3D, e eu queria apenas uma coisa basica, algo que recebesse os valores gerados e desenha-se o grafico da distribuição nos eixos X/Y.


7. Re: como desenhar um grafico 2D?

Marcelo Utikawa da Fonseca
utikawa

(usa Ubuntu)

Enviado em 07/01/2008 - 12:23h

O SDL é bem completo, serve para muita coisa. Apesar de ser usado para jogos ele também pode ser usado para o que você precisa!
Procure por funções que desenhem pixels e linhas e faça as suas funções de desenho a partir deste ponto. Uma função que já desenhe o gráfico diretamente através das coordenadas dificilmente você irá encontrar...


8. Re: como desenhar um grafico 2D?

Cesar
cmvb

(usa Debian)

Enviado em 15/05/2008 - 19:11h

Use o Gnuplot...






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts