Java学习者论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

恭喜Java学习者论坛(https://www.javaxxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,购买链接:点击进入购买VIP会员
JAVA高级面试进阶视频教程Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程

Go语言视频零基础入门到精通

Java架构师3期(课件+源码)

Java开发全终端实战租房项目视频教程

SpringBoot2.X入门到高级使用教程

大数据培训第六期全套视频教程

深度学习(CNN RNN GAN)算法原理

Java亿级流量电商系统视频教程

互联网架构师视频教程

年薪50万Spark2.0从入门到精通

年薪50万!人工智能学习路线教程

年薪50万!大数据从入门到精通学习路线年薪50万!机器学习入门到精通视频教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程 MySQL入门到精通教程
查看: 940|回复: 0

EveryChart教程(三)----折线图、堆积图、分布图、双项比较图

[复制链接]

该用户从未签到

发表于 2011-10-28 14:01:34 | 显示全部楼层 |阅读模式
上一篇文章主要介绍了柱形图和条形图(横向柱形图)的使用方法,这里讲一下折线图、堆积图、分布图、双项比较图的使用方法
其实这些以上那些图的使用方式与柱形图的使用方式没有太大的区别,只是分布图和双向比较图需要有一些需要注意的地方

先说一下折线图 Chart.Line

  1. new Chart.Line({   
  2.     'item' : [   
  3.         {   
  4.             'text' : 'A',   
  5.             'value' : [90,50,60,80,75]   
  6.         },   
  7.         {   
  8.             'text' : 'B',   
  9.             'value' : [25,33,45,98,50]   
  10.         },   
  11.         {   
  12.             'text' : 'C',   
  13.             'value' : [12,15,17,13,18]   
  14.         }   
  15.     ],   
  16.     'legend':{'x':100, 'y':5},   
  17.     'zoom' : 'follow',   
  18.     'valueHalf' : true,   
  19.     'linePoint':true,   
  20.     'grid' : true,   
  21.     'showValue' : true,   
  22.     'categoryMax' : 100,   
  23.     'categoryMin' : 20,   
  24.     'categoryUnit' : 20,   
  25.     'valueMax' : 110,   
  26.     'valueMin' : 10,   
  27.     'valueUnit' : 10   
  28. }).render('canvas-wrapper');   
  29.     new Chart.Line({
  30.         'item' : [
  31.             {
  32.                 'text' : 'A',
  33.                 'value' : [90,50,60,80,75]
  34.             },
  35.             {
  36.                 'text' : 'B',
  37.                 'value' : [25,33,45,98,50]
  38.             },
  39.             {
  40.                 'text' : 'C',
  41.                 'value' : [12,15,17,13,18]
  42.             }
  43.         ],
  44.         'legend':{'x':100, 'y':5},
  45.         'zoom' : 'follow',
  46.         'valueHalf' : true,
  47.         'linePoint':true,
  48.         'grid' : true,
  49.         'showValue' : true,
  50.         'categoryMax' : 100,
  51.         'categoryMin' : 20,
  52.         'categoryUnit' : 20,
  53.         'valueMax' : 110,
  54.         'valueMin' : 10,
  55.         'valueUnit' : 10
  56.     }).render('canvas-wrapper');   
复制代码
legend 表示是否显示图示,它可以是boolean型或{x,y}对象类型,如果是boolean型 默认的显示位置在是{x:10,y:10}
zoom 表示放大镜的方式,有两种可以选择 一种是follow 即跟随放大,一种是select 即选择区域放大
linePoint 是折线图特有的属性,它表示折点的样式,一种是stroke即空心折点 一种是fill即实心折点
pointTip 这个也是折线图特有的属性,如果设置为true,当鼠标滑过时会跟随鼠标显示同一垂直线折点的数值
cross 是坐标图的公共属性,它表示当鼠标滑过图标时,使用十字定位鼠标的坐标,它可以是整数型,表示保留小数点后的位数,0表示只显示整数位,1表示显示到小数点后1位...


生成的图表为
http://everyjs.co.cc/demo.html#line1
  
item的value属性与柱形图是一样的,它表示的是每组比较项的数值



堆积图 Chart.Stack


  1. new Chart.Stack({   
  2.     'item' : [   
  3.         {'text':'A','value':[10,15,20,25]},   
  4.         {'text':'B','value':[12,18,22,21]},   
  5.         {'text':'C','value':[30,35,37,40]}   
  6.     ],   
  7.     'categories':['2009','2010','2011','2012'],   
  8.     'showValue':true,   
  9.     'focusEvent':'mousemove',   
  10.     'tip':'mousemove',   
  11.     'grid':'v',   
  12.     'valueAxis':'x',   
  13.     'valueMax' : 100,   
  14.     'valueMin' : 0,   
  15.     'valueUnit' : 25   
  16. }).render('canvas-wrapper');   
  17.     new Chart.Stack({
  18.         'item' : [
  19.             {'text':'A','value':[10,15,20,25]},
  20.             {'text':'B','value':[12,18,22,21]},
  21.             {'text':'C','value':[30,35,37,40]}
  22.         ],
  23.         'categories':['2009','2010','2011','2012'],
  24.         'showValue':true,
  25.         'focusEvent':'mousemove',
  26.         'tip':'mousemove',
  27.         'grid':'v',
  28.         'valueAxis':'x',
  29.         'valueMax' : 100,
  30.         'valueMin' : 0,
  31.         'valueUnit' : 25
  32.     }).render('canvas-wrapper');
复制代码
生成的图表为
http://everyjs.co.cc/demo.html#stack1
  
如果不设置valueAxis为x,生成的堆积图就是纵向的,这里就不贴代码了


分布图 Chart.Scatter


  1. new Chart.Scatter({   
  2.             'valueMax':140,   
  3.             'valueMin':20,   
  4.             'valueUnit':20,   
  5.             'valueText':'体重 (kg)',   
  6.             'categoryMax' : 200,   
  7.             'categoryMin' : 145,   
  8.             'categoryUnit' : 5,   
  9.             'categoryText' : '身高 (cm)',   
  10.             'padding':20,   
  11.             'legend':{'x':65, 'y':20},   
  12.             'focusEvent':'mousemove',   
  13.             'tip':'mousemove',   
  14.             'item' : [   
  15.                 {'text':'女性', 'value':[   
  16.                             [161.2, 51.6], [167.5, 59.0], [159.5, 49.2], [157.0, 63.0], [155.8, 53.6],   
  17.                             [170.0, 59.0], [159.1, 47.6], [166.0, 69.8], [176.2, 66.8], [160.2, 75.2],   
  18.                             [172.5, 55.2], [170.9, 54.2], [172.9, 62.5], [153.4, 42.0], [160.0, 50.0],   
  19.                             [147.2, 49.8], [168.2, 49.2], [175.0, 73.2], [157.0, 47.8], [167.6, 68.8],   
  20.                             [159.5, 50.6], [175.0, 82.5], [166.8, 57.2], [176.5, 87.8], [170.2, 72.8],   
  21.                             [174.0, 54.5], [173.0, 59.8], [179.9, 67.3], [170.5, 67.8], [160.0, 47.0],   
  22.                             [154.4, 46.2], [162.0, 55.0], [176.5, 83.0], [160.0, 54.4], [152.0, 45.8],   
  23.                             [162.1, 53.6], [170.0, 73.2], [160.2, 52.1], [161.3, 67.9], [166.4, 56.6],   
  24.                             [167.6, 58.3], [165.1, 56.2], [160.0, 50.2], [170.0, 72.9], [157.5, 59.8],   
  25.                             [160.0, 55.4], [165.1, 104.1], [174.0, 55.5], [170.2, 77.3], [160.0, 80.5],   
  26.                             [167.6, 64.5], [167.6, 72.3], [167.6, 61.4], [154.9, 58.2], [162.6, 81.8],   
  27.                             [175.3, 63.6], [171.4, 53.4], [157.5, 54.5], [165.1, 53.6], [160.0, 60.0],   
  28.                             [174.0, 73.6], [162.6, 61.4], [174.0, 55.5], [162.6, 63.6], [161.3, 60.9],   
  29.                             [156.2, 60.0], [149.9, 46.8], [169.5, 57.3], [160.0, 64.1], [175.3, 63.6],   
  30.                             [169.5, 67.3], [160.0, 75.5], [172.7, 68.2], [162.6, 61.4], [157.5, 76.8],   
  31.                             [176.5, 71.8], [164.4, 55.5], [160.7, 48.6], [174.0, 66.4], [163.8, 67.3]]},   
  32.                 {'text':'男性', 'value':[   
  33.                             [174.0, 65.6], [175.3, 71.8], [193.5, 80.7], [186.5, 72.6], [187.2, 78.8],   
  34.                             [181.5, 74.8], [184.0, 86.4], [184.5, 78.4], [175.0, 62.0], [184.0, 81.6],   
  35.                             [180.0, 76.6], [177.8, 83.6], [192.0, 90.0], [176.0, 74.6], [174.0, 71.0],   
  36.                             [184.0, 79.6], [192.7, 93.8], [171.5, 70.0], [173.0, 72.4], [176.0, 85.9],   
  37.                             [176.0, 78.8], [180.5, 77.8], [172.7, 66.2], [176.0, 86.4], [173.5, 81.8],   
  38.                             [178.0, 89.6], [180.3, 82.8], [180.3, 76.4], [164.5, 63.2], [173.0, 60.9],   
  39.                             [183.5, 74.8], [175.5, 70.0], [188.0, 72.4], [189.2, 84.1], [172.8, 69.1],   
  40.                             [170.0, 59.5], [182.0, 67.2], [170.0, 61.3], [177.8, 68.6], [184.2, 80.1],   
  41.                             [186.7, 87.8], [171.4, 84.7], [172.7, 73.4], [175.3, 72.1], [180.3, 82.6],   
  42.                             [167.6, 75.5], [186.7, 101.4], [175.3, 91.1], [175.3, 67.3], [175.9, 77.7],   
  43.                             [175.3, 81.8], [179.1, 75.5], [181.6, 84.5], [177.8, 76.6], [182.9, 85.0],   
  44.                             [177.8, 102.5], [184.2, 77.3], [179.1, 71.8], [176.5, 87.9], [188.0, 94.3],   
  45.                             [174.0, 70.9], [167.6, 64.5], [170.2, 77.3], [167.6, 72.3], [188.0, 87.3],   
  46.                             [174.0, 80.0], [176.5, 82.3], [180.3, 73.6], [167.6, 74.1], [188.0, 85.9],   
  47.                             [180.3, 73.2], [167.6, 76.3], [183.0, 65.9], [183.0, 90.9], [179.1, 89.1],   
  48.                             [170.2, 62.3], [177.8, 82.7], [179.1, 79.1], [190.5, 98.2], [177.8, 84.1],   
  49.                             [180.3, 83.2], [180.3, 83.2]]}   
  50.             ]   
  51.         }).render('canvas-wrapper');   
  52.     new Chart.Scatter({
  53.                 'valueMax':140,
  54.                 'valueMin':20,
  55.                 'valueUnit':20,
  56.                 'valueText':'体重 (kg)',
  57.                 'categoryMax' : 200,
  58.                 'categoryMin' : 145,
  59.                 'categoryUnit' : 5,
  60.                 'categoryText' : '身高 (cm)',
  61.                 'padding':20,
  62.                 'legend':{'x':65, 'y':20},
  63.                 'focusEvent':'mousemove',
  64.                 'tip':'mousemove',
  65.                 'item' : [
  66.                     {'text':'女性', 'value':[
  67.                                 [161.2, 51.6], [167.5, 59.0], [159.5, 49.2], [157.0, 63.0], [155.8, 53.6],
  68.                                 [170.0, 59.0], [159.1, 47.6], [166.0, 69.8], [176.2, 66.8], [160.2, 75.2],
  69.                                 [172.5, 55.2], [170.9, 54.2], [172.9, 62.5], [153.4, 42.0], [160.0, 50.0],
  70.                                 [147.2, 49.8], [168.2, 49.2], [175.0, 73.2], [157.0, 47.8], [167.6, 68.8],
  71.                                 [159.5, 50.6], [175.0, 82.5], [166.8, 57.2], [176.5, 87.8], [170.2, 72.8],
  72.                                 [174.0, 54.5], [173.0, 59.8], [179.9, 67.3], [170.5, 67.8], [160.0, 47.0],
  73.                                 [154.4, 46.2], [162.0, 55.0], [176.5, 83.0], [160.0, 54.4], [152.0, 45.8],
  74.                                 [162.1, 53.6], [170.0, 73.2], [160.2, 52.1], [161.3, 67.9], [166.4, 56.6],
  75.                                 [167.6, 58.3], [165.1, 56.2], [160.0, 50.2], [170.0, 72.9], [157.5, 59.8],
  76.                                 [160.0, 55.4], [165.1, 104.1], [174.0, 55.5], [170.2, 77.3], [160.0, 80.5],
  77.                                 [167.6, 64.5], [167.6, 72.3], [167.6, 61.4], [154.9, 58.2], [162.6, 81.8],
  78.                                 [175.3, 63.6], [171.4, 53.4], [157.5, 54.5], [165.1, 53.6], [160.0, 60.0],
  79.                                 [174.0, 73.6], [162.6, 61.4], [174.0, 55.5], [162.6, 63.6], [161.3, 60.9],
  80.                                 [156.2, 60.0], [149.9, 46.8], [169.5, 57.3], [160.0, 64.1], [175.3, 63.6],
  81.                                 [169.5, 67.3], [160.0, 75.5], [172.7, 68.2], [162.6, 61.4], [157.5, 76.8],
  82.                                 [176.5, 71.8], [164.4, 55.5], [160.7, 48.6], [174.0, 66.4], [163.8, 67.3]]},
  83.                     {'text':'男性', 'value':[
  84.                                 [174.0, 65.6], [175.3, 71.8], [193.5, 80.7], [186.5, 72.6], [187.2, 78.8],
  85.                                 [181.5, 74.8], [184.0, 86.4], [184.5, 78.4], [175.0, 62.0], [184.0, 81.6],
  86.                                 [180.0, 76.6], [177.8, 83.6], [192.0, 90.0], [176.0, 74.6], [174.0, 71.0],
  87.                                 [184.0, 79.6], [192.7, 93.8], [171.5, 70.0], [173.0, 72.4], [176.0, 85.9],
  88.                                 [176.0, 78.8], [180.5, 77.8], [172.7, 66.2], [176.0, 86.4], [173.5, 81.8],
  89.                                 [178.0, 89.6], [180.3, 82.8], [180.3, 76.4], [164.5, 63.2], [173.0, 60.9],
  90.                                 [183.5, 74.8], [175.5, 70.0], [188.0, 72.4], [189.2, 84.1], [172.8, 69.1],
  91.                                 [170.0, 59.5], [182.0, 67.2], [170.0, 61.3], [177.8, 68.6], [184.2, 80.1],
  92.                                 [186.7, 87.8], [171.4, 84.7], [172.7, 73.4], [175.3, 72.1], [180.3, 82.6],
  93.                                 [167.6, 75.5], [186.7, 101.4], [175.3, 91.1], [175.3, 67.3], [175.9, 77.7],
  94.                                 [175.3, 81.8], [179.1, 75.5], [181.6, 84.5], [177.8, 76.6], [182.9, 85.0],
  95.                                 [177.8, 102.5], [184.2, 77.3], [179.1, 71.8], [176.5, 87.9], [188.0, 94.3],
  96.                                 [174.0, 70.9], [167.6, 64.5], [170.2, 77.3], [167.6, 72.3], [188.0, 87.3],
  97.                                 [174.0, 80.0], [176.5, 82.3], [180.3, 73.6], [167.6, 74.1], [188.0, 85.9],
  98.                                 [180.3, 73.2], [167.6, 76.3], [183.0, 65.9], [183.0, 90.9], [179.1, 89.1],
  99.                                 [170.2, 62.3], [177.8, 82.7], [179.1, 79.1], [190.5, 98.2], [177.8, 84.1],
  100.                                 [180.3, 83.2], [180.3, 83.2]]}
  101.                 ]
  102.             }).render('canvas-wrapper');
复制代码
这里要注意的是item的value属性是一个只有两位的数组集合,第一位表示的是category(即x轴)的数值,第二位表示的是value(即y轴)的数值,分布图可以不需要设置valueMax valueMin categoryMax 和categoryMin

生成的图表为
http://everyjs.co.cc/demo.html#scatter1



双项比较图 Chart.Compare

这里说的双项比较图是指只用两组比较数据的条形图,可以在运动数据统计中经常见到,因为只用两组数据所以在使用它的时候一定要记住保证item集合的长度为2


  1. new Chart.Compare({   
  2.             'item': [{   
  3.                 'text': 'Bryant',   
  4.                 'value': [40, 10, 10, 5, 3]   
  5.             }, {   
  6.                 'text': 'James',   
  7.                 'value': [42, 15, 12, 6, 4]   
  8.             }],   
  9.             'categories': ['Score', 'Rebounds', 'Steals', 'Assists','Third ball'],   
  10.             'valueMax': 80,   
  11.             'valueUnit': 20,   
  12.             'padding':40,   
  13.             'tip': 'mousemove',   
  14.             'focusEvent': 'mousemove',   
  15.             'showValue':true,   
  16.             'grid':'v',   
  17.             'legend': {   
  18.                 'x': 50,   
  19.                 'y': 20   
  20.             }   
  21.         }).render('canvas-wrapper');   
  22.     new Chart.Compare({
  23.                 'item': [{
  24.                     'text': 'Bryant',
  25.                     'value': [40, 10, 10, 5, 3]
  26.                 }, {
  27.                     'text': 'James',
  28.                     'value': [42, 15, 12, 6, 4]
  29.                 }],
  30.                 'categories': ['Score', 'Rebounds', 'Steals', 'Assists','Third ball'],
  31.                 'valueMax': 80,
  32.                 'valueUnit': 20,
  33.                 'padding':40,
  34.                 'tip': 'mousemove',
  35.                 'focusEvent': 'mousemove',
  36.                 'showValue':true,
  37.                 'grid':'v',
  38.                 'legend': {
  39.                     'x': 50,
  40.                     'y': 20
  41.                 }
  42.             }).render('canvas-wrapper');
复制代码
生成的图表为
http://everyjs.co.cc/demo.html#compare1
  
以上就是折线图、堆积图、分布图、双项比较图的使用方法和需要注意的地方.

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|Java学习者论坛 ( 声明:本站资料整理自互联网,用于Java学习者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

GMT+8, 2024-5-18 14:39 , Processed in 0.393132 second(s), 35 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表