北方适合种植哪些花卉?

小说:北方适合种植哪些花卉?作者:顺王马更新时间:2019-04-23字数:11231

那两艘洋鬼子炮艇在前面引路,商船缓缓跟在后面朝码头靠上去,停稳后,韩非和柳如叶一前一后带着几个手下暗藏手枪护送这陈长官他们下船,韩非明白,那个船长之所以不在船上动手,估计是他还没跟岸上的那些洋鬼子联系好,接下来该是大戏开场的时刻了。

求购海棠,不用东奔西跑,这里是你一站式购苗最好的选择!

他戏谑的说道:“你吞了梦魇粒子,确实是救了他们,但是你自己却将永远的陷入到梦魇之中,永远都不会醒来了,直到死亡”。
曲线玲珑的身材,出尘脱凡的气质,那亘古不变的冰山脸蛋,宛若冰山的女皇!

唐欣认识的人好多,结交的大多都是美女级别的人物,所以也算得上是桃花鱼旺盛!将箱子放在一个空的床旁,轻轻的坐在床上,唐欣望着宿舍内的两人,出言说道:“哦,这样我可是期待了哦,说说吧。”

前言

echarts是百度出品的一款很棒的前端图表控件,被评为“百度少有的良心产品”。可以实现散点图、折线图、柱状图、地图、饼图、雷达图、K线图等等几十种常用、不常用的图表,效果酷炫。

示例地址:http://echarts.baidu.com/examples.html

由于近期项目的需要,我开发了一款echarts插件,可以让序列series分组展示,下拉框选择。这样当series较多时,不再被超长的图例legend所困扰,而且可以自带全选功能。

效果

用作示例的数据,产品维度分为衬衫、羊毛衫两个,每个产品具有2016年销量、2017年销量,每个年度销量有1-12月共12个点的数据。

HTML代码如下:

View Code

 

1.没有做分组时,衬衫、羊毛衫的数据混杂在一起,难以辨别。

2.实现分组后,通过右上角的下拉选择产品,还可以选择全部。

用法

//参数说明:
//chartObj:echarts对象,注意不是dom对象
//selector: 下拉框控件jQuery对象
//options: 初始化chartObj的options参数
//groupProperty: 在series中充当分组代码的字段名称
//groupNameOfShowAll: 显示全部的字符串
makeEchartsGroups (chartObj, selector, options, groupProperty, groupNameOfShowAll);

//调用示例:
makeEchartsGroups(myChart, $("#dropdown"), option, "group", "全部");

从这里也能看出,第一,echarts.group依赖于jQuery。第二,它不是一个真正的echarts插件,只是一个js辅助方法。

这也是我下一步要改进的方向,希望各位能献计献策啊。

源代码

送给大家啦,写的不好:-)

 1 var makeEchartsGroups = function (chartObj, selector, options, groupProperty, groupNameOfShowAll)
 2 {
 3     var _chartObj = chartObj;
 4     var _selector = selector;
 5     var _options = options;
 6     var _groupProperty = groupProperty;
 7     var _groupNameOfShowAll = groupNameOfShowAll;
 8     var _groups = [];
 9     var _allSeries = options.series;
10     //每次更新数据所用的空模板
11     var _optionsTmp = deepCopy(options);
12     _optionsTmp.series = [];
13     _optionsTmp.legend.data = [];
14 
15     //1. 生成下拉
16     if (_groupNameOfShowAll != undefined) {
17         _groups.push(_groupNameOfShowAll);
18     }
19     for (var i = 0; i < options.series.length; i++) {
20         var gname = options.series[i][groupProperty];
21         if (_groups.indexOf(gname) == -1) {
22             _groups.push(gname);
23         }
24     }
25     for (var i = 0; i < _groups.length; i++) {
26         var gname = _groups[i];
27         $(selector).append("<option value="" + gname + "">" + gname + "</option>");
28     }
29 
30     //2. 绑定下拉选择事件
31     $(selector).change(function () {
32         updateChartGroup($(this).val());
33     });
34 
35     //3. 初次更新
36     updateChartGroup(_groups[0]);
37 
38     //深度拷贝
39     function deepCopy(obj) {
40         return $.extend(true, {}, obj);
41     };
42 
43     //更新echarts
44     function updateChartGroup(selectedValue) {
45         var newOptions = deepCopy(_optionsTmp);
46         //push series and legends
47         for (var j = 0; j < _allSeries.length; j++) {
48             if (selectedValue == _groupNameOfShowAll || _allSeries[j][_groupProperty] == selectedValue) {
49                 newOptions.series.push(_allSeries[j]);
50                 newOptions.legend.data.push(_allSeries[j].name);
51             }
52         }
53 
54         _chartObj.setOption(newOptions, true);
55     };
56 };

 基本原理很简答,就是从options中提取groups,将options中的series做拆分,按照group分组,下拉选择时生成新的options,扔给echarts,就是这样。

如果有需要,还可以对selector方式进行改进,用更炫酷的方式实现分组的选择也是很容易做到的。

在开发中遇到问题,解决问题,并且用一种优雅的方式实现它,最后在这里分享给大家,希望对大家有所帮助。

编辑:公卓辛成

发布:2019-04-23 02:24:40

当前文章:http://emigration.net.cn/rrob0/39314.html

两米高的红瑞木价格多少钱一棵? 4公分青竹什么地方最便宜? 陕西哪里有卖金叶女贞小苗? 市场上的马兰花都带土吗? 专家指定:形式多样化的红瑞木是工程绿化上用量最多的一种苗 江西有种植苦楝树的基地吗? 皇竹草喂鹅可以吗? 苦瓜的种籽哪里能买到?

44768 85037 86418 52418 83800 60418 87191 98114 67295 30459 56018 11228 86682 18734 48233 86887 95280 98620 66199 21568

我要说两句: (0人参与)

发布