J'essaie de faire une implémentation de l'API Charts dans xlwings - python, pour la manipulation de graphique de base comme l'ajout de titre d'axe, la modification des couleurs de ligne, la taille du marqueur de tracé, etc.

Je reçois une erreur:

le nom 'xlCategory' n'est pas défini

Le code d'implémentation est

import xlwings as xw

wb = xw.Book(r'Tau.xlsm') 
sht = wb.sheets.add(name ='Plot')
tau_plot = sht.charts.add()
tau_plot.chart_type='xy_scatter'
tau_plot.set_source_data(sht.range('E1:F135'))
tau_plot.api[1].Axes(xlCategory).HasTitle = True

Pouvez-vous m'aider s'il vous plaît avec cette erreur.

1
Ankit Bansal 11 mars 2019 à 17:49

2 réponses

Meilleure réponse

xlCategory est défini sous XlAxisType, une énumération qui définit un certain nombre de valeurs constantes. Si vous ne faites pas référence à la bibliothèque de types/modèle d'objet Excel, xlCategory ne signifie rien pour Python/xlwings. Utilisez plutôt sa valeur sous-jacente (1), ou définissez votre propre copie afin que l'identifiant xlCategory soit associé à la valeur 1.

1
Mathieu Guindon 11 mars 2019 à 15:48

Vous pouvez utiliser les constantes d'Excel comme suit:

>>> from xlwings.constants import AxisType
>>> AxisType.xlCategory
1
Felix Zumstein 11 mars 2019 à 16:33