Bar.vue 845 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <template>
  2. <div class="bar">
  3. <h4>{{title}}</h4>
  4. <div class="chart">
  5. <v-chart :force-fit="true" height="312" :data="data" :padding="[24, 0, 0, 0]">
  6. <v-tooltip />
  7. <v-axis />
  8. <v-bar position="x*y"/>
  9. </v-chart>
  10. </div>
  11. </div>
  12. </template>
  13. <script>
  14. const data = []
  15. for (let i = 0; i < 12; i += 1) {
  16. data.push({
  17. x: `${i + 1}月`,
  18. y: Math.floor(Math.random() * 1000) + 200
  19. })
  20. }
  21. const tooltip = [
  22. 'x*y',
  23. (x, y) => ({
  24. name: x,
  25. value: y
  26. })
  27. ]
  28. const scale = [{
  29. dataKey: 'x',
  30. min: 2
  31. }, {
  32. dataKey: 'y',
  33. title: '时间',
  34. min: 1,
  35. max: 22
  36. }]
  37. export default {
  38. name: 'Bar',
  39. props: ['title'],
  40. data () {
  41. return {
  42. data,
  43. scale,
  44. tooltip
  45. }
  46. }
  47. }
  48. </script>
  49. <style scoped lang="less">
  50. .bar{
  51. position: relative;
  52. .chart{
  53. }
  54. }
  55. </style>