Partager via


Graphiques 3D (contrôles Chart)

Le contrôle Chart prend en charge les graphiques 3D. Pour utiliser des graphiques 3D, affectez à la propriété Area3DStyle.Enable3D de la zone de graphique concernée la valeur True.

Propriétés 3D

L'image suivante montre comment les propriétés dans ChartArea.Area3DStyle correspondent à l'apparence de la zone de graphique 3D.

Image illustrant les propriétés d'apparence 3D

En plus des propriétés indiquées, la propriété Area3DStyle.Perspective donne une perspective spatiale à la zone de graphique. L'affectation d'une valeur plus élevée à cette propriété fait apparaître la zone de graphique plus proche du lecteur.

Lorsque vous affectez à la propriété Area3DStyle.IsRightAngleAxis la valeur True, l'axe vertical forme toujours un angle droit avec l'axe horizontal ou l'axe Z, selon le degré de rotation. Lorsque cette propriété a la valeur True, la propriété Area3DStyle.Perspective est sans effet. L'inverse est vrai également.

Effets sur les éléments de graphique

L'utilisation de la 3D pour une zone de graphique peut affecter les éléments de graphique de la zone de graphique de différentes façons :

  • Les profondeurs des annotations affichées dans une zone de graphique 3D ne peuvent pas être modifiées. Les annotations ancrées à un point de données ont la même profondeur que le point de données auquel elles sont ancrées. Dans tous les autres cas, les annotations sont affichées sur la surface avant de la zone de graphique 3D.

  • Les annotations ne peuvent pas être ancrées à des points de données dans les graphiques à secteurs ou en anneau 3D.

  • Le défilement et le zoom ne sont pas disponibles.

  • Les séparations d'échelle ne sont pas disponibles.

Dessin personnalisé et 3D

Contrairement aux zones de graphique 2D, le contrôle Chart ne déclenche pas les événements PrePaint ou PostPaint pour les séries et les points de données dans les zones de graphique 3D. Vous devez utiliser d'autres événements pour effectuer le dessin personnalisé.

Étant donné que les zones de graphique 3D ont un système de coordonnées (X,Y,Z), vous devez effectuer une transformation entre les coordonnées (X,Y) utilisées par les méthodes GDI+ et les coordonnées (X,Y,Z). Par exemple, pour obtenir les coordonnées en pixels absolues d'un point sur l'axe 3D, procédez comme suit :

  1. Utilisez la méthode Axis.ValueToPosition pour obtenir les valeurs des coordonnées X et Y relatives des valeurs de l'axe.

  2. Utilisez les méthodes ChartArea.GetSeriesZPosition et ChartArea.GetSeriesDepth pour obtenir la valeur de coordonnée Z relative.

  3. Utilisez la classe Point3D pour instancier un objet Point3D avec les valeurs des coordonnées X, Y et Z.

  4. Utilisez la méthode ChartArea.TransformPoints pour transformer les coordonnées relatives (X,Y,Z) en coordonnées relatives 2D.

  5. Utilisez la méthode ChartGraphics.GetAbsolutePoint pour convertir les coordonnées relatives en coordonnées en pixels absolues.

Voir aussi

Référence

System.Windows.Forms.DataVisualization.Charting

System.Web.UI.DataVisualization.Charting

Autres ressources

Utilisation de contrôles Chart