begin process at 2010 02 09 19:47:53
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > FAIRE UN HISTORGRAMME (EN GIF) À LA VOLÉE EN ASP.NET

FAIRE UN HISTORGRAMME (EN GIF) À LA VOLÉE EN ASP.NET


 Information sur la source

Note :
8 / 10 - par 2 personnes
8,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Graphique Source .NET ( DotNet ) Niveau :Débutant Date de création :25/04/2002 Date de mise à jour :25/04/2002 17:03:30 Vu :15 727

Auteur : Nix

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note


 Description

Cliquez pour voir la capture en taille normale
Ce script vous montre comment générer une image GIF à la volée grâce à ASP.Net
Créez une page, mettez ceci dans le code (supprimez tout le html dans le fichier .aspx)

Source

  • ' A mettre en haut de votre page avant le "Public Class"
  • Imports System.Drawing
  • Imports System.Drawing.Imaging
  • ' Puis mettez ceci dans votre Page_Load
  • Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  • Dim i As Integer
  • Dim MaBitMap As New Bitmap(300, 250) ' On créé une image de 300x250
  • Dim MonObjGfx As Graphics
  • Dim MesValeurs(9) As Integer
  • Dim MesDescriptions(9) As String
  • MonObjGfx = Graphics.FromImage(MaBitMap)
  • ' On met un fond blanc
  • MonObjGfx.Clear(Color.White)
  • ' On trace un rectangle tout autour de notre image
  • MonObjGfx.DrawRectangle(Pens.Black, 0, 0, 299, 249)
  • ' On donne titre à notre graphique
  • MonObjGfx.DrawString("ASPFr.Com Rulez ! ;-)", New Font("Verdana", 16, FontStyle.Bold), Brushes.Black, New PointF(5, 5))
  • For i = 0 To 9
  • ' On rempli avec un nombre aléatoire entre 0 et 200
  • MesValeurs(i) = 200 * Rnd()
  • ' Pour cet exemple, on met la valeur en temps que légende
  • MesDescriptions(i) = MesValeurs(i)
  • ' On trace le rectangle de couleur Bleu
  • MonObjGfx.FillRectangle(New SolidBrush(Color.Blue), ((i + 1) * 25), 230 - MesValeurs(i), 10, MesValeurs(i))
  • ' Histoire de rendre un peu plus beau notre histogramme, on met un contour pour chaque barre
  • MonObjGfx.DrawRectangle(Pens.Black, ((i + 1) * 25), 230 - MesValeurs(i), 10, MesValeurs(i))
  • ' On affiche la légende en dessous de la barre tracée
  • MonObjGfx.DrawString(MesDescriptions(i).ToString, New Font("Arial", 8), Brushes.Black, ((i + 1) * 25), 235)
  • Next
  • ' On "balance" le graph au format Gif
  • MaBitMap.Save(Response.OutputStream, ImageFormat.Gif)
  • ' On peut très bien le sortir en Jpeg ou dans d'autres formats, voici la syntax :
  • ' MaBitMap.Save(Response.OutputStream, ImageFormat.Jpeg)
  • End Sub
' A mettre en haut de votre page avant le "Public Class"
Imports System.Drawing
Imports System.Drawing.Imaging

' Puis mettez ceci dans votre Page_Load
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Dim i As Integer
    Dim MaBitMap As New Bitmap(300, 250) ' On créé une image de 300x250
    Dim MonObjGfx As Graphics
    Dim MesValeurs(9) As Integer
    Dim MesDescriptions(9) As String

    MonObjGfx = Graphics.FromImage(MaBitMap)
    ' On met un fond blanc
    MonObjGfx.Clear(Color.White)
    ' On trace un rectangle tout autour de notre image
    MonObjGfx.DrawRectangle(Pens.Black, 0, 0, 299, 249)
    ' On donne titre à notre graphique
    MonObjGfx.DrawString("ASPFr.Com Rulez ! ;-)", New Font("Verdana", 16, FontStyle.Bold), Brushes.Black, New PointF(5, 5))

    For i = 0 To 9
        ' On rempli avec un nombre aléatoire entre 0 et 200
        MesValeurs(i) = 200 * Rnd()
        ' Pour cet exemple, on met la valeur en temps que légende
        MesDescriptions(i) = MesValeurs(i)
        ' On trace le rectangle de couleur Bleu
        MonObjGfx.FillRectangle(New SolidBrush(Color.Blue), ((i + 1) * 25), 230 - MesValeurs(i), 10, MesValeurs(i))
        ' Histoire de rendre un peu plus beau notre histogramme, on met un contour pour chaque barre
        MonObjGfx.DrawRectangle(Pens.Black, ((i + 1) * 25), 230 - MesValeurs(i), 10, MesValeurs(i))
        ' On affiche la légende en dessous de la barre tracée
        MonObjGfx.DrawString(MesDescriptions(i).ToString, New Font("Arial", 8), Brushes.Black, ((i + 1) * 25), 235)
    Next
    ' On "balance" le graph au format Gif
    MaBitMap.Save(Response.OutputStream, ImageFormat.Gif)

    ' On peut très bien le sortir en Jpeg ou dans d'autres formats, voici la syntax :
    ' MaBitMap.Save(Response.OutputStream, ImageFormat.Jpeg)
End Sub
 



 Sources du même auteur

Source avec une capture Source .NET (Dotnet) RÉCUPÉRER L'ADRESSE IP D'UN NOM DE DOMAINE AVEC ASP.NET
Source .NET (Dotnet) ENVOYER UN MAIL LORSQU'UNE PAGE GÉNÈRE UNE ERREUR
Source .NET (Dotnet) RÉCUPÉRER UNE PAGE WEB À TRAVERS UNE PAGE ASP.NET
Source avec Zip UPLOADER UN FICHIER SANS COMPOSANT V2.0
CONVERTION DE DATE FRANÇAISE VERS UNE DATE ANGLAISE

 Sources de la même categorie

Source avec Zip Source avec une capture Source .NET (Dotnet) CLASS CHARTS, HISTOGRAMCHART ET SECTORCHART par The Red Man
EXTRACTION D'INFORMATIONS IPTC D'UNE IMAGE par teenage
Source avec Zip Source avec une capture Source .NET (Dotnet) MANIPULATION D'IMAGES EN TEMPS RÉEL - RÉDUCTION COMPRESSION ... par badrbadr
Source avec Zip Source avec une capture Source .NET (Dotnet) UTILISATION D’AJAX ET D’UN WEBSERVICE POUR LA GÉNÉRATION D’I... par tikrimi
REDIMENSIONNER UNE IMAGE - ASPIMAGE par Keneyda

Commentaires et avis

Commentaire de lexxx le 09/07/2002 09:40:44

Ca m'a l'air bien bien sympa comme script mais je ne sais pas comment faire pour insérer ce qui est en en-tête et qui doit figurer avant le public class.
Si quelqu'un peut m'aider.
Merci

Commentaire de DreaMs le 21/05/2003 17:15:52

Tout en haut de ton code :
<%@ Page Language="VB" %>
<%@ Import NameSpace="System.Drawing" %>
<%@ Import NameSpace="System.Drawing.Imaging" %>
<script runat="server">

Commentaire de vfi le 03/10/2003 14:25:18

C'est super sympas comme script.
J'aurais voulu savoir comment faire pour afficher le graph dans une sorte de popup?
En fait je voudrais dimensionner la fenetre de sortie (Response.OutputStream) au format de mon graphique.

Merci

Commentaire de ankou22 le 08/04/2005 10:50:01

Bonjour, j'ai fait tout comme il est dit ... mais je n'arrive pas faire fonctionner cette source.
J'ai une page blanche et vide...

Dans le code HTML, j'ai mis ca... c'est Bon ?

<%@ Page Language="vb" %>
<%@ Import NameSpace="System.Drawing" %>
<%@ Import NameSpace="System.Drawing.Imaging" %>
<script runat=server ></script>

il faut faire autre chose ?

Merci  

Commentaire de ABF le 02/06/2009 16:49:19

Bonjour,

Ce code est très simple et fonctionne sans soucis mais le problème est que si on l'inclu dans une master page, le code du gif (ou autre format) d'affiche comme nu response.writer en plus du graphe.

Est-il possible Nix de ne pas afficher le code de l'image ?

Merci

++

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,842 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales