气泡图

Bubble Charts


气泡图与散列图类似,气泡图还使用气泡的大小作为第三维来描述数据的值。图标可以包含多个数据组。

  1. """
  2. 简单气泡图
  3. """
  4. from openpyxl import Workbook
  5. from openpyxl.chart import Series, Reference, BubbleChart
  6. wb = Workbook()
  7. ws = wb.active
  8. rows = [
  9. ("Number of Products", "Sales in USD", "Market share"),
  10. (14, 12200, 15),
  11. (20, 60000, 33),
  12. (18, 24400, 10),
  13. (22, 32000, 42),
  14. (),
  15. (12, 8200, 18),
  16. (15, 50000, 30),
  17. (19, 22400, 15),
  18. (25, 25000, 50),
  19. ]
  20. for row in rows:
  21. ws.append(row)
  22. chart = BubbleChart() # 创建一个 气泡图
  23. chart.style = 18 # use a preset style
  24. # add the first series of data
  25. # 添加第一个数据组
  26. xvalues = Reference(ws, min_col=1, min_row=2, max_row=5)
  27. yvalues = Reference(ws, min_col=2, min_row=2, max_row=5)
  28. size = Reference(ws, min_col=3, min_row=2, max_row=5)
  29. series = Series(values=yvalues, xvalues=xvalues, zvalues=size, title="2013")
  30. chart.series.append(series) ### 图形数据(chart.series)是一个list。将多个数据组追加进去。
  31. # add the second
  32. # 添加第二个数据组
  33. xvalues = Reference(ws, min_col=1, min_row=7, max_row=10)
  34. yvalues = Reference(ws, min_col=2, min_row=7, max_row=10)
  35. size = Reference(ws, min_col=3, min_row=7, max_row=10)
  36. series = Series(values=yvalues, xvalues=xvalues, zvalues=size, title="2014")
  37. chart.series.append(series) ### 图形数据(chart.series)是一个list。追加第二个
  38. # place the chart starting in cell E1
  39. # 气泡图生成位置
  40. ws.add_chart(chart, "E1")
  41. wb.save("bubble.xlsx")

注意

本例中,并没有使用第三列数据Market share

以上操作将生成一个两组数据的气泡图,效果如如下:

"Sample bubble chart"


^ <-Previous | Next-> |