GR?FICO .NET PEPINO

MESTRE 07/04/2015 08:10:30
#445764
eai pessoal beleza? estou com um problemão pra resolver e não sei como

Tenho que fazer um gráfico de dispersão e correlação dentro do sistema, o mesmo é feito em Excel hoje na empresa e eu devo levar o gráfico pra dentro
do sistema, só que ta aí a minha dúvida, como faço para fazer um gráfico de dispersão dentro do Visual Studio??

O pessoal do dep. de qualidade da empresa super amigos do TI ja disseram que sem o gráfico no sistema não vão liberar meu sistema, hoje é tudo via Excel..

Gráficos simples com produtos, etc é simples mais como vou fazer esse gráfico de dispersão?

Imagem do gráfico:


Como eles fazem no Excel:
No excel pra fazer esse gráfico de dispersão eles criam 2 tabelas com 3 valores nas celulas da esq, e 3 na celula da direita, nesse video
mostra direitinho como fazer o gráfico no Excel: https://www.youtube.com/watch?v=aE31hGL38VY

Só que como vou fazer isso no Vb.NET ou C# ???????
TUNUSAT 07/04/2015 12:10:07
#445780
Resposta escolhida
Mestre,

Preciso de sua ajuda para poder te ajudar...
... eu achei esta linda função:

http://www.codeproject.com/Articles/49723/Linear-correlation-and-statistical-functions

public static void GetPearson(double[] x, 
double[] y,
ref Double r,ref Double prob)
{
//will regularize the unusual case of complete correlation
const double TINY=1.0e-20;
int j,n=x.Length;
Double yt,xt,t,df;
Double syy=0.0,sxy=0.0,sxx=0.0,ay=0.0,ax=0.0;
for (j=0;j<n;j++) {
//finds the mean
ax += x[j];
ay += y[j];
}
ax /= n;
ay /= n;
for (j=0;j<n;j++) {
// compute correlation coefficient
xt=x[j]-ax;
yt=y[j]-ay;
sxx += xt*xt;
syy += yt*yt;
sxy += xt*yt;
}
r=sxy/(Math.Sqrt(sxx*syy)+TINY);
//for a large n
prob=erfcc(Math.Abs(z*Math.Sqrt(n-1.0))/1.4142136);
}

public static Double erfcc(Double x)
{
Double t, z, ans;
z = Math.Abs(x);
t = 1.0 / (1.0 + 0.5 * z);
ans = t * Math.Exp(-z * z - 1.26551223 + t * (1.00002368 +
t * (0.37409196 + t * (0.09678418 +
t * (-0.18628806 + t * (0.27886807 +
t * (-1.13520398 + t * (1.48851587 +
t * (-0.82215223 + t * 0.17087277)))))))));
return x >= 0.0 ? ans : 2.0 - ans;
}


Eu vou montar um modelo para você analisar e jogar em um gráfico VB.Net usando um o objeto [Ô]CHART[Ô] conforme explicado no vídeo do Macoratti:

VBNET - Criando graficos com o controle Chart
https://www.youtube.com/watch?v=MK3SWwN4SAg

Criei até um banquinho ACCESS colocando as mesmas variáveis do vídeo que você citou acima. Eu vou ler este banco com o DATASET da mesma forma que o J. C. Macoratti fez com o SQL Server no vídeo dele.

*********************** Mas apareceu um problema !!!

Mas NÃO entendi o que quer dizer a variável [Ô]z[Ô] dentro desta linha:
//for a large n
prob=erfcc(Math.Abs(z*Math.Sqrt(n-1.0))/1.4142136);


O [Ô]z[Ô] não é declarado e não aparece em lugar nenhum! E agora? Será que alguém que manja de matemática consegue decifrar de onde vem este bendito [Ô]z[Ô]?

[][ô]s,
Tunusat.
MESTRE 08/04/2015 07:23:56
#445798
Cara é isso..

o z é
Citação:

Double z;
z = Math.Abs(x);



Na verdade TUNUSAT esse Z está me parecendo o valor definido como valor=1 na fórmula abaixo ou o Z pode ser o N:

erfcc(Math.Abs(z*Math.Sqrt(n-1.0))/1.4142136);

Se puder passar o exemplo ficarei eternamente agradecido hehe..
TUNUSAT 08/04/2015 15:48:57
#445811
Mestre,

Montei um exemplo anexo, mas está tosco ...
... usei C# do site que deu a função pronta que calcula o Coeficiente de Correlação.
Clique no botão [Ô]Calcular[Ô]. Ele vai riscar um gráfico parecido com o do vídeo que você postou.
O valor do Coeficiente de Correlação aparentemente bate com o do vídeo.
Veja o que você acha. Depois melhore este exemplo, okay?

[][ô]s,
Tunusat
MESTRE 08/04/2015 20:56:32
#445819
Obrigado TUNUSAT, pela ajuda.. inicialmente fiquei desesperado.

tive um grande apoio do pessoal do dep. de engenharia e vi que não era tão um bixo de 7 cabeças.. to fazendo na mão
as fórmulas pra depois fazer o gráfico, como ja dei início a implementação e ja estou na metade vou tentar continuar na unha
dei uma olhada no exemplo e é isso mesmo hehe mais mesmo assim vou tentar fazer e posto aqui haha..

ai eu subo qualquer coisa o exemplo feito na unha pra cá, por enquanto vou manter o tópico em aberto hehe..
Tópico encerrado , respostas não são mais permitidas