theme.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. /**
  2. * @fileOverview default theme
  3. * @author dxq613@gail.com
  4. */
  5. const Util = require('./util/common');
  6. const color1 = '#E8E8E8'; // color of axis-line and axis-grid
  7. const color2 = '#808080'; // color of axis label
  8. const defaultAxis = {
  9. label: {
  10. fill: color2,
  11. fontSize: 10
  12. },
  13. line: {
  14. stroke: color1,
  15. lineWidth: 1
  16. },
  17. grid: {
  18. type: 'line',
  19. stroke: color1,
  20. lineWidth: 1,
  21. lineDash: [ 2 ]
  22. },
  23. tickLine: null,
  24. labelOffset: 7.5
  25. };
  26. const Theme = {
  27. fontFamily: '"Helvetica Neue", "San Francisco", Helvetica, Tahoma, Arial, "PingFang SC", "Hiragino Sans GB", "Heiti SC", "Microsoft YaHei", sans-serif',
  28. defaultColor: '#1890FF',
  29. pixelRatio: 1,
  30. padding: 'auto',
  31. appendPadding: 15,
  32. colors: [
  33. '#1890FF',
  34. '#2FC25B',
  35. '#FACC14',
  36. '#223273',
  37. '#8543E0',
  38. '#13C2C2',
  39. '#3436C7',
  40. '#F04864'
  41. ],
  42. shapes: {
  43. line: [ 'line', 'dash' ],
  44. point: [ 'circle', 'hollowCircle' ]
  45. },
  46. sizes: [ 4, 10 ],
  47. axis: {
  48. common: defaultAxis, // common axis configuration
  49. bottom: Util.mix({}, defaultAxis, {
  50. grid: null
  51. }),
  52. left: Util.mix({}, defaultAxis, {
  53. line: null
  54. }),
  55. right: Util.mix({}, defaultAxis, {
  56. line: null
  57. }),
  58. circle: Util.mix({}, defaultAxis, {
  59. line: null
  60. }),
  61. radius: Util.mix({}, defaultAxis, {
  62. labelOffset: 4
  63. })
  64. },
  65. shape: {
  66. line: {
  67. lineWidth: 2,
  68. lineJoin: 'round',
  69. lineCap: 'round'
  70. },
  71. point: {
  72. lineWidth: 0,
  73. size: 3
  74. },
  75. area: {
  76. fillOpacity: 0.1
  77. }
  78. },
  79. _defaultAxis: defaultAxis
  80. };
  81. module.exports = Theme;