chart.js 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811
  1. //导出全局表信息存储模块
  2. export default {
  3. //开启命名空间
  4. namespaced: true,
  5. //模块数据
  6. state: () => ({
  7. //成绩图表数据
  8. gradeData: {
  9. //总成绩曲线图数据
  10. mainLineChart: {
  11. categories: [
  12. "开学考试",
  13. "第一月考",
  14. "第二月考",
  15. "期中考试",
  16. "第三月考",
  17. "期末考试"
  18. ],
  19. series: [{
  20. "name": "总成绩",
  21. "data": [
  22. 556,
  23. 577,
  24. 540,
  25. 588,
  26. 563,
  27. 594
  28. ]
  29. }],
  30. },
  31. //表格数据
  32. tableData: [{
  33. '考试': '开学',
  34. '语文': 83,
  35. '数学': 95,
  36. '外语': 95,
  37. '体育': 92,
  38. '思品': 88,
  39. '科学': 90,
  40. },
  41. {
  42. '考试': '四月月考',
  43. '语文': 93,
  44. '数学': 92,
  45. '外语': 90,
  46. '体育': 82,
  47. '思品': 90,
  48. '科学': 99,
  49. },
  50. {
  51. '考试': '期中',
  52. '语文': 99,
  53. '数学': 91,
  54. '外语': 82,
  55. '体育': 94,
  56. '思品': 85,
  57. '科学': 100,
  58. },
  59. {
  60. '考试': '五月月考',
  61. '语文': 99,
  62. '数学': 92,
  63. '外语': 97,
  64. '体育': 92,
  65. '思品': 98,
  66. '科学': 88,
  67. },
  68. {
  69. '考试': '六月月考',
  70. '语文': 99,
  71. '数学': 90,
  72. '外语': 92,
  73. '体育': 92,
  74. '思品': 80,
  75. '科学': 90,
  76. },
  77. {
  78. '考试': '期末',
  79. '语文': 99,
  80. '数学': 85,
  81. '外语': 92,
  82. '体育': 95,
  83. '思品': 91,
  84. '科学': 99,
  85. }
  86. ],
  87. columns: [{
  88. 'title': '考试',
  89. 'key': '考试',
  90. 'width': 220,
  91. },
  92. {
  93. 'title': '语文',
  94. 'key': '语文',
  95. },
  96. {
  97. 'title': '数学',
  98. 'key': '数学',
  99. },
  100. {
  101. 'title': '外语',
  102. 'key': '外语',
  103. },
  104. {
  105. 'title': '体育',
  106. 'key': '体育',
  107. },
  108. {
  109. 'title': '思品',
  110. 'key': '思品',
  111. },
  112. {
  113. 'title': '科学',
  114. 'key': '科学',
  115. }
  116. ],
  117. //学期折线图数据
  118. semesterLineChart: {
  119. //总成绩
  120. lineComparison: {
  121. categories: [
  122. "测验1",
  123. "测验2",
  124. "测验3",
  125. "测验4",
  126. "测验5",
  127. ],
  128. series: [{
  129. "name": "孩子总分",
  130. "data": [
  131. 400,
  132. 390,
  133. 380,
  134. 399,
  135. 366,
  136. ]
  137. },
  138. {
  139. "name": "班级平均分",
  140. "data": [
  141. 360,
  142. 377,
  143. 355,
  144. 322,
  145. 338,
  146. ]
  147. },
  148. {
  149. "name": "年级平均分",
  150. "data": [
  151. 333,
  152. 346,
  153. 364,
  154. 347,
  155. 355,
  156. ]
  157. }
  158. ],
  159. },
  160. //主科
  161. majorComparison: {
  162. categories: [
  163. "测验1",
  164. "测验2",
  165. "测验3",
  166. "测验4",
  167. "测验5",
  168. ],
  169. series: [{
  170. "name": "语数外总分",
  171. "data": [
  172. 266,
  173. 277,
  174. 258,
  175. 288,
  176. 294,
  177. ]
  178. },
  179. {
  180. "name": "班级平均分",
  181. "data": [
  182. 255,
  183. 257,
  184. 260,
  185. 264,
  186. 250,
  187. ]
  188. },
  189. {
  190. "name": "年级平均分",
  191. "data": [
  192. 245,
  193. 260,
  194. 252,
  195. 247,
  196. 255,
  197. ]
  198. }
  199. ],
  200. },
  201. //副科
  202. minorComparison: {
  203. categories: [
  204. "测验1",
  205. "测验2",
  206. "测验3",
  207. "测验4",
  208. "测验5",
  209. ],
  210. series: [{
  211. "name": "科学体育思品总分",
  212. "data": [
  213. 280,
  214. 290,
  215. 280,
  216. 299,
  217. 266,
  218. ]
  219. },
  220. {
  221. "name": "班级平均分",
  222. "data": [
  223. 260,
  224. 277,
  225. 255,
  226. 222,
  227. 238,
  228. ]
  229. },
  230. {
  231. "name": "年级平均分",
  232. "data": [
  233. 233,
  234. 246,
  235. 268,
  236. 242,
  237. 256,
  238. ]
  239. }
  240. ],
  241. },
  242. },
  243. //单科曲线图数据
  244. subjectAreaChart: {
  245. //单科对比
  246. areaComparison: {
  247. categories: [
  248. "测验1",
  249. "测验2",
  250. "测验3",
  251. "测验4",
  252. "测验5",
  253. "测验6"
  254. ],
  255. series: [{
  256. "name": "数学成绩",
  257. "data": [
  258. 90,
  259. 95,
  260. 92,
  261. 100,
  262. 88,
  263. 99
  264. ]
  265. },
  266. {
  267. "name": "班级平均",
  268. "data": [
  269. 85,
  270. 88,
  271. 84,
  272. 92,
  273. 93,
  274. 89
  275. ]
  276. },
  277. {
  278. "name": "年纪平均",
  279. "data": [
  280. 88,
  281. 79,
  282. 77,
  283. 74,
  284. 85,
  285. 89
  286. ]
  287. }
  288. ],
  289. },
  290. //学科对比
  291. subjectComparison: {
  292. categories: [
  293. "测验1",
  294. "测验2",
  295. "测验3",
  296. "测验4",
  297. "测验5",
  298. "测验6"
  299. ],
  300. series: [{
  301. "name": "数学",
  302. "data": [
  303. 90,
  304. 95,
  305. 92,
  306. 100,
  307. 88,
  308. 99
  309. ]
  310. },
  311. {
  312. "name": "语文",
  313. "data": [
  314. 95,
  315. 98,
  316. 84,
  317. 92,
  318. 93,
  319. 89
  320. ]
  321. },
  322. {
  323. "name": "英语",
  324. "data": [
  325. 98,
  326. 89,
  327. 97,
  328. 84,
  329. 95,
  330. 89
  331. ]
  332. },
  333. {
  334. "name": "科学",
  335. "data": [
  336. 91,
  337. 72,
  338. 92,
  339. 89,
  340. 97,
  341. 92
  342. ]
  343. },
  344. {
  345. "name": "体育",
  346. "data": [
  347. 95,
  348. 89,
  349. 92,
  350. 87,
  351. 91,
  352. 83
  353. ]
  354. },
  355. {
  356. "name": "思品",
  357. "data": [
  358. 91,
  359. 82,
  360. 87,
  361. 84,
  362. 90,
  363. 85
  364. ]
  365. }
  366. ],
  367. },
  368. },
  369. //近期考试数据
  370. recentColumnChart: {
  371. //近两次对比
  372. columnComparison: {
  373. categories: [
  374. "数学",
  375. "语文",
  376. "英语",
  377. "体育",
  378. "科学",
  379. "思品"
  380. ],
  381. series: [{
  382. "name": "最近成绩",
  383. "data": [
  384. 91,
  385. 92,
  386. 94,
  387. 88,
  388. 88,
  389. 98
  390. ]
  391. },
  392. {
  393. "name": "上次成绩",
  394. "data": [
  395. 88,
  396. 84,
  397. 97,
  398. 92,
  399. 89,
  400. 93
  401. ]
  402. }
  403. ],
  404. },
  405. //雷达对比
  406. radarSubjectComparison: {
  407. categories: [
  408. "数学",
  409. "语文",
  410. "英语",
  411. "体育",
  412. "科学",
  413. "思品"
  414. ],
  415. series: [{
  416. "name": "孩子",
  417. "data": [
  418. 91,
  419. 92,
  420. 94,
  421. 82,
  422. 82,
  423. 89
  424. ]
  425. },
  426. {
  427. "name": "班平均",
  428. "data": [
  429. 82,
  430. 83,
  431. 77,
  432. 83,
  433. 91,
  434. 81
  435. ]
  436. },
  437. {
  438. "name": "年级平均",
  439. "data": [
  440. 77,
  441. 78,
  442. 73,
  443. 80,
  444. 86,
  445. 85
  446. ]
  447. }
  448. ],
  449. },
  450. },
  451. //优势科目分析
  452. advantageRoseChart: {
  453. //近期分析
  454. recentAnalyse: {
  455. series: [{
  456. "data": [{
  457. "name": "数学",
  458. "value": 100
  459. },
  460. {
  461. "name": "语文",
  462. "value": 86
  463. },
  464. {
  465. "name": "英语",
  466. "value": 100
  467. },
  468. {
  469. "name": "科学",
  470. "value": 79
  471. },
  472. {
  473. "name": "体育",
  474. "value": 88
  475. },
  476. {
  477. "name": "思品",
  478. "value": 95
  479. }
  480. ]
  481. }]
  482. },
  483. //学期综合分析
  484. semesterAnalyse: {
  485. series: [{
  486. "data": [{
  487. "name": "数学",
  488. "value": 95
  489. },
  490. {
  491. "name": "语文",
  492. "value": 88
  493. },
  494. {
  495. "name": "英语",
  496. "value": 99
  497. },
  498. {
  499. "name": "科学",
  500. "value": 80
  501. },
  502. {
  503. "name": "体育",
  504. "value": 77
  505. },
  506. {
  507. "name": "思品",
  508. "value": 95
  509. }
  510. ]
  511. }]
  512. },
  513. },
  514. //能力雷达图分析
  515. abilityRadarChart: {
  516. //重要考试分析
  517. importantAnalyse: {
  518. categories: [
  519. "语文",
  520. "数学",
  521. "英语",
  522. "科学",
  523. "体育",
  524. "思品"
  525. ],
  526. series: [{
  527. "name": "开学考试",
  528. "data": [
  529. 90,
  530. 89,
  531. 98,
  532. 88,
  533. 95,
  534. 89
  535. ]
  536. },
  537. {
  538. "name": "期中考试",
  539. "data": [
  540. 94,
  541. 89,
  542. 97,
  543. 91,
  544. 95,
  545. 85
  546. ]
  547. },
  548. {
  549. "name": "期末考试",
  550. "data": [
  551. 80,
  552. 90,
  553. 95,
  554. 96,
  555. 90,
  556. 92
  557. ]
  558. }
  559. ],
  560. },
  561. //普通考试分析
  562. commonAnalyse: {
  563. categories: [
  564. "语文",
  565. "数学",
  566. "英语",
  567. "科学",
  568. "体育",
  569. "思品"
  570. ],
  571. series: [{
  572. "name": "4月月考",
  573. "data": [
  574. 90,
  575. 100,
  576. 77,
  577. 78,
  578. 75,
  579. 95
  580. ]
  581. },
  582. {
  583. "name": "6月月考",
  584. "data": [
  585. 89,
  586. 94,
  587. 75,
  588. 99,
  589. 80,
  590. 92
  591. ]
  592. },
  593. {
  594. "name": "8月月考",
  595. "data": [
  596. 79,
  597. 84,
  598. 94,
  599. 73,
  600. 99,
  601. 87
  602. ]
  603. }
  604. ],
  605. },
  606. },
  607. //排名占比分析
  608. rankArcbarChart: {
  609. //近期排名占比分析
  610. recentAnalyse: {
  611. series: [{
  612. "name": "超过年级中",
  613. "data": 0.8,
  614. "color": "#0052d4"
  615. },
  616. {
  617. "name": "超过班级中",
  618. "data": 0.90,
  619. "color": "#ff5959"
  620. }
  621. ],
  622. },
  623. //学期排名占比分析
  624. semesterAnalyse: {
  625. categories: [
  626. "测验1",
  627. "测验2",
  628. "测验3",
  629. "测验4",
  630. "测验5",
  631. "测验6"
  632. ],
  633. series: [{
  634. "name": "超过年级中百分之",
  635. "data": [
  636. 90,
  637. 95,
  638. 92,
  639. 100,
  640. 88,
  641. 99
  642. ]
  643. },
  644. {
  645. "name": "超过班级中百分之",
  646. "data": [
  647. 95,
  648. 98,
  649. 84,
  650. 92,
  651. 93,
  652. 79
  653. ]
  654. }
  655. ]
  656. },
  657. }
  658. },
  659. //今日页面图表数据
  660. todayData: {
  661. //评测进度条数据
  662. evaluationArcbar: {
  663. "series": [{
  664. "name": "完成率",
  665. "data": 0.84,
  666. "color": "#0052d4"
  667. }]
  668. },
  669. //作业进度条数据
  670. homeworkArcbar: {
  671. "series": [{
  672. "name": "完成率",
  673. "data": 1,
  674. "color": "#ff5959"
  675. }]
  676. },
  677. //孩子数据记录
  678. //学习休息时长对比
  679. studyColumn: {
  680. "categories": [
  681. "星期一",
  682. "星期二",
  683. "星期三",
  684. "星期四",
  685. "星期五",
  686. "星期六",
  687. "星期天"
  688. ],
  689. "series": [{
  690. "name": "自主学习(时)",
  691. "data": [
  692. 2,
  693. 3,
  694. 2.5,
  695. 3,
  696. 2,
  697. 1,
  698. 3
  699. ]
  700. },
  701. {
  702. "name": "娱乐放松(时)",
  703. "data": [
  704. 1,
  705. 2,
  706. 0.5,
  707. 3,
  708. 0.5,
  709. 3.5,
  710. 2
  711. ]
  712. }
  713. ]
  714. },
  715. //锻炼时长
  716. exercisePie: {
  717. "series": [{
  718. "data": [{
  719. "name": "周一(分)",
  720. "value": 20
  721. },
  722. {
  723. "name": "周二(分)",
  724. "value": 30
  725. },
  726. {
  727. "name": "周三(分)",
  728. "value": 50
  729. },
  730. {
  731. "name": "周四(分)",
  732. "value": 100
  733. },
  734. {
  735. "name": "周五(分)",
  736. "value": 40
  737. },
  738. {
  739. "name": "周六(分)",
  740. "value": 40
  741. },
  742. {
  743. "name": "周日(分)",
  744. "value": 60
  745. }
  746. ]
  747. }]
  748. },
  749. sleepRing: {
  750. "series": [{
  751. "data": [{
  752. "name": "周一(时)",
  753. "value": 8
  754. },
  755. {
  756. "name": "周二(时)",
  757. "value": 7
  758. },
  759. {
  760. "name": "周三(时)",
  761. "value": 8.5
  762. },
  763. {
  764. "name": "周四(时)",
  765. "value": 6.5
  766. },
  767. {
  768. "name": "周五(时)",
  769. "value": 8
  770. },
  771. {
  772. "name": "周六(时)",
  773. "value": 8
  774. },
  775. {
  776. "name": "周日(时)",
  777. "value": 9
  778. }
  779. ]
  780. }]
  781. },
  782. },
  783. }),
  784. //模块方法(修改数据)
  785. mutations: {
  786. // 更新图表数据
  787. updateSubjectAreaComparison(state, areaComparison) {
  788. state.areaComparison = areaComparison
  789. },
  790. updateLineChartData(state, lineChartData) {
  791. state.lineChartData = lineChartData
  792. }
  793. },
  794. //模块属性(数据包装)
  795. getters: {
  796. //学科科目
  797. getSubjectList(state) {
  798. let {
  799. 考试,
  800. ...subject
  801. } = state.gradeData.tableData[0]
  802. return Object.keys(subject)
  803. }
  804. }
  805. }