Bonjour tout le monde
Je voudrais savoir SVP est ce qu'il y a possibilité de générer des courbes à partir des données d'une base de données Access via le vb.net .
Merci pour votre aide
Version imprimable
Bonjour tout le monde
Je voudrais savoir SVP est ce qu'il y a possibilité de générer des courbes à partir des données d'une base de données Access via le vb.net .
Merci pour votre aide
des courbes ?
faudra être plus clair... et ce n'est pas spécifique à vb.net ou C#, mais plutot est-il possible de générer des courbes, et si oui comment, avec DOTNET.
tu veux faire ca pour quelle plateforme ? sans nous en dire plus sur ton besoin on risque pas de répondre.
tu veux faire quoi ?
- un site web
- une application console ? (là c'est clairement pas possible)
- un client lourd (Application Windows avec des fenêtre et tout)
- un client RIA (même principe que Flash, mais en Silverlight)
Quand vous ne choisissez pas une section spécifique à une plateforme, spécifiez mieux vos besoins, qu'on évite de reposer sans cesse les mêmes questions...
quand on écrit ici, c'est qu'on a un problème sur une écriture particulière.
quand on veut savoir s'il est possible de commander la fusée arianne depuis dotnet, c'est clairement pas le forum adapté...
A la limite quand vous n'êtes pas sure utilisez le forum DOTNET en général, plutôt qu'une section, et n'oubliez pas de dire exactement ce que vous voulez, parce que là afficher des courbes... c'est tellement précis que dans l'absolu je répondrais oui c'est possible, et je répondrais non aussi, car c'est pas possible sur toutes les plateformes.
Bonjour,
Pour surenchérir sur le post précédent, j'ajouterai que d'un point de vue strictement mathématique générer des courbes à partir de valeurs, c'est généralement générer une polyligne ... Soit on a une fonction y=f(x), ou une fonction de n variables et on veut tracer une courbe, soit on a n valeurs discrètes qui pour tous I associe F(i) et on veut soit tracer une polyligne soit interpoler les valeurs entre I et I+1 et là c'est un autre sport ....
Donc tant informatiquement que mathématiquement précisez vos besoins ....
Bonsoir
merci pour vos réponses.
Je m'explique :
je suis en train de développer une application qui permet la saisie d'un ensemble de données dans une interface graphique puis ces dernières sont stockés dans une base de données Access. (Application to Access)
Ce que je voudrais maintenant faire c'est extraire ces données (pas de problème) et dessiner une courbe pour les interpréter.
J'utilise visual studio 2008 et ACCESS 2007 et je développe en vb.net
j'espère que cette fois ci j'ai été plus précis , merci
Euhhhh on parle de cours (premier post) ou de courbes (titre du topic).
Je te conseillerais de chercher du coté de zedgraph.
c'est nettement plus précis, mais quelle technologie d'affichage a tu choisi?
ton application est une application Windows Forms ou Windows Presentation Foundation ?
si c'est une Windows Forms effectivement on trouve pléthore de libs comme zedgraph...
si c'est en WPF... c'est pas particulièrement compliqué de faire cela soit même.
salut à tous le monde
@methylene : je parle bien de courbe ,je vais rectifier merci pour la remarque , ok je vais me renseigner sur le zedgraph
@cinemania : oui je travaille avec des windows forms , merci je vais voir le zedgraph
Bonjour,
J'ai un peu de code que j'ai utilisé pour dessiner des cercles et lignes (partie d'une courbe), mais le principe reste, je ne sais pas si ça peut t'être utile, voici :
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 Sub form4_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Me.Paint Dim i As Long Dim r As Long Dim ar As Double ' angle en radians Dim sinus As Double Dim cosinus As Double Dim x As Long Dim y As Long Dim ox As Long Dim oy As Long Dim g As System.Drawing.Graphics ' méthode Dim xy As PointF() = New PointF(360) {} ' nombre degrés boucle : matrice v(x, y) Dim c As New Pen(Color.FromArgb(1, 2, 3), 2) ' couleur rgb 2) = taille trait ' g = Me.CreateGraphics() r = 200 ox = 250 oy = 250 ' For i = 0 To 360 ar = i * 3.14 / 180 cosinus = Math.Cos(ar) x = r * cosinus + ox xy(i).X = x sinus = Math.Sin(ar) y = oy - r * sinus xy(i).Y = y Next i ' g.DrawLines(c, xy) ' imprime écran matrice g.Dispose() c.Dispose() End Sub
Et encore un peu de code :
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 ' DESSIN D'UN POINT, DESSIN D'UNE LIGNE DE DEUX POINTS ' les varibales et affectations du CERCLE ci-dessus sont réutilisées Dim noir As New Pen(Color.FromArgb(0, 0, 0), 2) For i = 0 To 360 Step 18 ' séparation départ Est nb=20 r = 240 ' point 1 petit rayon ar = i * 3.14 / 180 cosinus = Math.Cos(ar) x1 = r * cosinus + ox sinus = Math.Sin(ar) y1 = oy - r * sinus r = 270 ' point 2 grand rayon ar = i * 3.14 / 180 cosinus = Math.Cos(ar) x2 = r * cosinus + ox sinus = Math.Sin(ar) y2 = oy - r * sinus g.DrawLine(noir, x1, y1, x2, y2) ' ligne en 2 rayons Next i
Et un fine du code pour les lisser (Malgrange), mais là c'est en VB6, désolé, je n'ai pas eu à le faire en vbNet :
Espérant t'avoir été utile, au plaisir, cordialement.Code:
1
2
3
4
5
6
7
8
9
10
11
12 ' Lissage de Malgrange i=0 For j = valeur To (valeur + x) Step 0.01 posit = Hauteur - (Hauteur / 2) * (Sin(2 * 3.141592654 * j / cycle) + 1) ' milieu -> haut 'OU posit = Hauteur / 2 * (Sin(2 * 3.141592654 * j / cycle) + 1) ' milieu -> bas i = i + 1 PSet (i, posit), QBColor(couleur) Next j
Joe.
merci beaucoup Ehjoe je vais faire un essai avec ton code :D
ce code se fait dans un évenement Paint sur un control, en ayant obtenu un objet Graphics.
salut
moi je te conseille de voir ce cours sur le Contrôle Chart, vraiment très intéressant. à toi de jouer...
http://plasserre.developpez.com/cours/chart/
Bonjour,
Il y a effectivement deux solutions pour tracer des courbes en .NET soit utiliser qq chose de tout fait exemple Chart ou autre comme déjà cité, soit utiliser le system.drawing et un peu de math comme le fait EhJoe. Perso je suis deuxième solution.
Si le code de Hejoe expose le principe en revanche il manque la partie gestion des coordonnées et gestion de l'objet graphic au sens GDI(+) du terme.
Lorsque l'on dessine sur un ordinateur on allume des pixels d'un périphérique or ces bêtes là on la fâcheuse tendance à être indivisibles et à appartenir à un ensemble fini. Or en math on dessine (du moins en général) dans un ensemble continu infini. Passer d'un monde à l'autre nécessite quelques transformation de coordonnées.
Sous windows il existe deux système de coordonnées, les coordonnées de périphérique (pixel d'un écran, d'une imprimante ) origine coin sup gauche y vers le bas, et les coordonnées logiques (entiers long) qui permettent de garantir le principe originel de windows, l'indépendance vis à vis du périphérique. l'origine du repère logique est réglable, la valeur de la transfo logique périphérique (et son inverse) aussi. Un mode courant est le mode HiMetric dont chaque unité logique vaut 0.01 mm ce quelque soit le périphérique.
Sous .Net on règle ce mode par le biais de Graphics.PageUnit qui peut-être le millimètre.
Pour le changement de système de coordonnées on utilise les trois opérations (translation, rotation, homothétie ) qui peuvent composer une transformation affine à travers un objet matrix qui sera appliqué à graphic.transform .
A partir de là vous pouvez écrire votre propre transfo pour travailler dans un repère à vous et ensuite transformer ces unités en unités interprétables par les fonctions de dessin de l'objet graphic .
Si vous voulez tracer par exemple y=x^2, vous faite une boucle qui va de N1 à N2 qui sont les valeurs de X en unité entier long, chaque N est convertit en X (valeur réel double), on obtient Y (réel double), qu'on transforme en P (entier long), il ne reste plus qu'à allumer le pixel (N,P).
Sous .Net vous serez obliger de récupérer le bitmap de fond du graphic que vous utilisez, et utiliser bitmap.setpixel.
Si en revanche vous utiliser des valeurs discontinues que vous reliez par des droites, et autres camemberts il suffit d'utiliser les fonctions de dessin de graphic pour réaliser à peu près tout ce que vous voulez.
A+
salut tout le monde
@ brahim20 : merci pour ton lien , il est très intéressent , j'ai constaté qu'il existe un composant chart même pour le .net 3.5 je l'ai chargé mais il ne s'affiche pas dans la boité à outils !!!! bisare
@ Geo2A : merci pour ta fameuse intervention orientée mathématique , ça éclairci les choses.
Sinon j'ai essayé de travailler avec la bibliothèque zedgraph sauf qu'elle est en c# et mon projet et en vb.net , je me demande s'il y a moyen de caster vers le vb.net ?
Bonjour,
zebgraph est un composant que l'on charge dans la boite à outil.
Puis il est utilisable comme un autre contrôle dans une application vb.net
salut
exact, il est bien dans la boite à outils sauf que tous les exemples que je trouve sont en c# je n'ai pas arrivé à tout caster :(
Il existe des convertisseurs C# Vb.net très efficace, et en cherchant bien je suis persuadé que tu puisses trouver des exemples en vb.net, il suffit juste de taper ce qu'il faut sur Google :zoubi:.
Et je rajouterais même que la base c'est de creer un nouveau projet et de tester un peu les différentes propriétés et méthodes de l'outil en question. C'est aussi de cette façon que l'on apprend. :mouarf:
merci beaucoup methylene le convertisseur marche à merveille.
Merci à tout le monde pour vos aide
Là entre autres, des exemples dans les deux langages phares de .net.
Pour apprendre.
http://zedgraph.org/wiki/index.php?t...oject_Tutorial
thanks a lot , c'est ce que j'ai utilisé comme exemple
Je sais que je vais encore me repetter (et que ca va en enerver certain ;)) mais si vous aviez fait une recherche directement, vous auriez trouver immediatement 250 posts sur zedgraph et tout ce qui concerne les graphes ... d'ou un gain de temps et d'energie :ccool: