bubble_chart.py 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. from __future__ import absolute_import
  2. #Autogenerated schema
  3. from openpyxl.descriptors.serialisable import Serialisable
  4. from openpyxl.descriptors import (
  5. Typed,
  6. Set,
  7. MinMax,
  8. Bool,
  9. Integer,
  10. Alias,
  11. Sequence,
  12. )
  13. from openpyxl.descriptors.excel import ExtensionList
  14. from openpyxl.descriptors.nested import (
  15. NestedNoneSet,
  16. NestedMinMax,
  17. NestedBool,
  18. )
  19. from ._chart import ChartBase
  20. from .axis import TextAxis, NumericAxis
  21. from .series import XYSeries
  22. from .label import DataLabelList
  23. class BubbleChart(ChartBase):
  24. tagname = "bubbleChart"
  25. varyColors = NestedBool(allow_none=True)
  26. ser = Sequence(expected_type=XYSeries, allow_none=True)
  27. dLbls = Typed(expected_type=DataLabelList, allow_none=True)
  28. dataLabels = Alias("dLbls")
  29. bubble3D = NestedBool(allow_none=True)
  30. bubbleScale = NestedMinMax(min=0, max=300, allow_none=True)
  31. showNegBubbles = NestedBool(allow_none=True)
  32. sizeRepresents = NestedNoneSet(values=(['area', 'w']))
  33. extLst = Typed(expected_type=ExtensionList, allow_none=True)
  34. x_axis = Typed(expected_type=NumericAxis)
  35. y_axis = Typed(expected_type=NumericAxis)
  36. _series_type = "bubble"
  37. __elements__ = ('varyColors', 'ser', 'dLbls', 'bubble3D', 'bubbleScale',
  38. 'showNegBubbles', 'sizeRepresents', 'axId')
  39. def __init__(self,
  40. varyColors=None,
  41. ser=(),
  42. dLbls=None,
  43. bubble3D=None,
  44. bubbleScale=None,
  45. showNegBubbles=None,
  46. sizeRepresents=None,
  47. extLst=None,
  48. **kw
  49. ):
  50. self.varyColors = varyColors
  51. self.ser = ser
  52. self.dLbls = dLbls
  53. self.bubble3D = bubble3D
  54. self.bubbleScale = bubbleScale
  55. self.showNegBubbles = showNegBubbles
  56. self.sizeRepresents = sizeRepresents
  57. self.x_axis = NumericAxis(axId=10, crossAx=20)
  58. self.y_axis = NumericAxis(axId=20, crossAx=10)
  59. super(BubbleChart, self).__init__(**kw)