[Excel] mise à l'echelle d'un cercle

Fermé
Eruel - 2 déc. 2009 à 23:52
 Eruel - 3 déc. 2009 à 12:30
Bonjour,

j'ai dessiné un cercle dans un graphe à l'aide des équations paramétriques :
x = a+R*cos(a)
y = b+R*sin(a)

J'ai un problème au niveau de la "mise en forme du cercle" c'est a dire que si je déplace le centre de mon cercle, le graphe ne se centre pas et ensuite je n'arrive pas à avoir les abscisses et les ordonnées de même unité donc mon cercle se retrouve écrasé. Je suis tombé sur un forum anglais ou il donne une macro en vb
qui permet de mettre à la même échelles les axes mais il faut que le graphique soit sélectionné et ensuite lancé la macro. J'aimerai savoir si il est possible d'automatiser un peu le tout c'est à dire que si je change le rayon ou la position tout se centre et se mets à la bonne échelle.

Le fichier : http://www.cijoint.fr/cjlink.php?file=cj200912/cijjuvvkBS.xls

Merci d'avance.
A voir également:

2 réponses

Raymond PENTIER Messages postés 58764 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 19 décembre 2024 17 256
3 déc. 2009 à 04:03
Non, je ne pense pas.
Je suis même certain que ce n'est pas possible (sans macro).

1) C'est à toi de jouer (à l'aide de la souris) sur les dimensions de la zone de graphique ou de la zone de traçage, pour obtenir une cercle parfait. Et il reste parfait quand tu changes la valeur du rayon.

2) Et pour que le centre du cercle soit au centre de la zone de graphique, c'est aussi à toi de jouer en modifiant les échelles des 2 axes, de façon à ce que le minimum soit l'opposé du maximum : par exemple minimum -5 pour un maximum de 5.
Enfin si tu choisis les mêmes échelles pour x et y, si tu n'insères ni légende ni titre de graphique, il te suffira de donner à ta zone de graphique la forme d'un carré pour te rapprocher de ce que tu désires.
Ce qui précède (au point 2) n'est malheureusement valable que si tu places le centre du cercle à l'origine des axes (a=b=0) !

En résumé, NON, il n'y a rien d'automatique à ta disposition.
0
Bonjour,

Merci pour votre réponse. J'ai retrouvé le forum ou j'avais vu la macro :

https://www.eng-tips.com/viewthread.cfm?qid=141275

Dans l'avant dernier post une personne donne une manipulation à faire mais j'avoue ne pas l'avoir très bien comprise :

I found an easy way to keep X and Y scales equal without using VBA.

step 1. Make chart area square.

step 2.

Add an extra graph to the chart. It will have only two points from lower left corner to upper right corner.
Condition Y2-Y1 = X2-X1 will assure equal X and Y scales.

calculate follwing values

dX = Xmax - Xmin
dY = Ymax - Ymin
extraX = max(dY-dX,0)
extraY = max(dX-dY,0)

where Xmax, Xmin, Ymax and Ymin are maximum and minimum values of all graphs in the chart.

coordinates of diagonal line
X1 = Xmin - extraX/2 : Y1 = Ymin - extraY/2
X2 = Xmax + extraX/2 : Y2 = Ymax + extraY/2

to make this line invisible in Format Data Series set Line and Marker to none.
0