标签: HTML

  • ECharts图表中XY轴数据过多导致重叠显示不全问题如何解决 图文教程

    ECharts图表中XY轴数据过多导致重叠显示不全问题如何解决 图文教程

    ECharts,缩写来自Enterprise Charts,商业级数据图表,它最初是为了满足百度公司商业体系里各种业务系统(如凤巢、广告管家等等)的报表需求。 现在这个项目也由百度在开发维护。

    之前我们介绍了【PHP Mysql 动态数据结合 highcharts 图表统计】,最近我们在日常的开发中使用到ECharts插件来制表,但是如果遇到XY轴内容过长显示不全怎么办?下面我们记录一下解决办法。

    PHP代码部分

    
        $res = db_select('online_action_log','1=1 group by url order by nums desc','url,count(url) as nums','','10');  
        $res = array_reverse($res);
        $tmp = array();
        foreach($res as $key => $val ){
            $tmp['x'][] = $val['nums']; 
            $tmp['y'][] = $val['url']; 
        }
        $yday_url_top10['xAxis'] = json_encode(array_values($tmp['x']));
        $yday_url_top10['yAxis'] = json_encode(array_values($tmp['y']));   

    HTML代码

    <div id="yday_url_top10"></div>

    JAVASCRIPT代码

    <script type="text/javascript">
    /* URL TOP 10 开始*/               
    yday_url_top10_option = {
        title : {
            text: '昨日URL访问前十',
    //        subtext: '数据来自网络'
        },
        tooltip : {
            trigger: 'axis'
        },
        legend: {
            data:['昨日URL访问前十', '']
        },
        toolbox: {
            show : true,
            feature : {
                mark : {show: true},
                dataView : {show: true, readOnly: false},
                magicType: {show: true, type: ['line', 'bar']},
                restore : {show: true},
                saveAsImage : {show: true}
            }
        },
        calculable : true,
        xAxis : [
            {
                type : 'value',
                boundaryGap : [0, 0.01]
            }
        ],
        yAxis : [
            {
                type : 'category',
                data : <?php echo $yday_url_top10['yAxis']?>,
                axisLabel:{ interval:0,//0:全部显示,1:间隔为1显示对应类目,2:依次类推,(简单试一下就明白了,这样说是不是有点抽象) 
                            rotate:0,//倾斜显示,-:顺时针旋转,+或不写:逆时针旋转 
                }
            }
        ],
        grid: [{
             left: '30%',//因旋转导致名字太长的类目造成遮蔽,可以配合这两个属性
             bottom:'10%'// 分别表示:距离左边距和底部的距离,具体数值按实际情况调整
        }],
        series : [
            {
                name:'访问次数',
                type:'bar',
                itemStyle : {  
                        normal : {  
                            color:'#ff69b4',  //圈圈的颜色
                            lineStyle:{  
                                color:'#ff69b4'  //线的颜色
                            }  
                    }  
                },  
                data:<?php echo $yday_url_top10['xAxis']?>
            },
        ]
    };
    var yday_url_top10_Chart = echarts.init(document.getElementById('yday_url_top10'));
    // 使用刚指定的配置项和数据显示图表。
    yday_url_top10_Chart.setOption(yday_url_top10_option);
    /*  URL TOP 10 IP 结束*/       
    </script>

    整理代码执行后,数据HTML结果如下:

    这里是Y轴的内容比较长,所以我们这里将grid的配置中加入了left:30%的属性,这里需要根据自己的需求来写。

    整体运行效果:

  • 华为云免费6个月领取 免费服务器

    华为云免费6个月领取 免费服务器

    百度开放云 bcc 免费服务器,继百度云之后华为云也开始免费。
    华为云:http://www.hwclouds.com/
    企业免费试用
    • · 2核 CPU
    • · 40G 系统盘
    • · 5M 宽带
    • · 4G 内存
    • · 100G 数据盘
    • · 1个弹性公网IP
    个人免费试用
    • · 1核 CPU
    • · 40G 系统盘
    • · 1个弹性公网IP
    • · 1G 内存
    • · 1M 宽带

    可以免费6个月,比较坑比的是华为云的工单系统并不完善,每次提交工单以后,客服都会打电话过来联系我们。

    最弱的是居然不能更换系统,比如你安装了centos7,想换成windows系统都不行。

    其他的不多说,既然是免费的产品那也就不再挑剔了。希望华为云能越做越好。

  • 百度开放云 bcc 免费服务器

    百度开放云 bcc 免费服务器

    前面我们评测了百度开放云,百度开放云 云服务器BCC 性能评测

    百度云决定搞个大事情!百度云服务器?免费赠送!0元享云服务器

    助力全民云+时代

    活动时间:2017年6月7日—2017年7月7日只要登陆百度云官网cloud.baidu.com完成实名认证

    即可领取免费云服务器!

    多样配置,弹性时长0门槛满足您的多样需求您的云上第一步,百度云来助!
    step1:点击“登陆”,注册账号并激活
    step2:完成企业/个人实名认证
    step3:选择配置并领取免费云服务器
    坑比的是宽带需要自己另行购买!

    [title]

    活动规则:

    [/title]

    1.活动对象:活动期间通过实名认证且未使用过百度云服务器的用户2.活动时间:2017年6月7日—2017年7月7日3.限量名额:每天10点开始抢购,企业用户每天限量100名,个人用户每天限量50名,抢完即止。

    4.活动期间内同一个人用户、同一企业用户仅限领取一次免费云服务器使用权且仅限领用一款免费云服务器(仅限广州机房普通型云服务器)。(同一手机号、同一认证证件、同一account ID 或经百度云排查多个账户为同一实际控制人的均被视为同一用户)

    5.参与活动的用户应同时遵守百度云官网所示的《用户服务协议》、产品相关的协议及页面使用规则(包括但不限于产品服务等级协议,使用规范,产品服务条款等);免费领用的云服务器可以正常进行升级和续费操作。

    6.活动期间,可免费领用的百度云服务器的产品配置、产品数量及产品所在机房可能会根据活动情况而随时调整;对恶意注册或采用其他作弊方式参与活动、领用后长期闲置百度云服务器(15天及以上)、利用百度云产品从事违法违规行为或违反百度云相关协议规则的用户,百度云保留对其收回免费云服务器使用资格的权利。

    7.百度云在法律允许的范围内享有对本活动的解释权。

    8.对活动有任何疑问,欢迎您随时拨打客服电话 4008-777-818? 咨询,也可以登陆百度云官网论坛进行相关活动咨询。

     

  • Python 爬虫 抓取豆瓣小组图片 通过api提交入库到 Chevereto 图床

    Python 爬虫 抓取豆瓣小组图片 通过api提交入库到 Chevereto 图床

    最近没事弄了一个图床(http://788to.com),然后又比较喜欢豆瓣小组里的图片,所以就想从豆瓣小组抓取图片。老季只对php比较了解,但是php的多线程做爬虫的话还是比较弱的,所以就想到了用Python来做这件事情。

    前篇:Chevereto free版本 使用api 上传图片 图文教程

    注:老季是Python新手,如有不对的地方,希望大神指出。

    下面将python脚本开源:

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    # 作者:老季
    # 网址:https://www.jiloc.com/43112.html
    #导入所需的库
    from bs4 import BeautifulSoup
    from urllib.parse import urlencode
    import urllib.request,socket,re,sys,os,json,time,threading,queue
    
    # 获取单页图片方法
    def getImage(url): 
        # 网址
        if url == '':
            print('URL NULL')
            sys.exit()
        print(url)
        print('--- Begin to Crawl Url ---')
        req = urllib.request.Request(url)
        res = urllib.request.urlopen(req)
        data = res.read()
        for link,t in set(re.findall(r'(https://img3.doubanio.com/view/group_topic/large/public/[^s]*?(jpg))', str(data))):
            if  link != '' :
                http_status = http_get(link)
                print( link + ' -> '+ http_status )
    #        print(link)
        print('--- End to Crawl Url ---')
    
    # 获取页面的url地址并使用getImage方法抓取图片
    def getUrlList(url):
        data=urllib.request.urlopen(url).read()  
        soup = BeautifulSoup(data, "html.parser")
        tdList = soup.find_all("td",class_='title')        
        for i in tdList:
            title = i.a.get("title")
            if len(i.contents) > 1:
                i_href = i.a.get('href')
                getImage(i_href)
    
    # 模拟浏览器提交数据
    def http_get(url):
        submit_url = 'http://788to.com/api/1/upload/?key='+urllib.parse.quote_plus('API值')+'&source='+urllib.parse.quote_plus(url)
    #    print(submit_url)
        req = urllib.request.Request(submit_url)
        try:
            res = urllib.request.urlopen(req)
        except urllib.error.HTTPError as e:
            print(e.read())      
            sys.exit()
        # .decode('ascii') : 将byte类型转化为字符串格式
    #    return res.read().decode('ascii')
        data = json.loads(res.read().decode())
        return str(data['status_code'])
    
    #getUrlList('https://www.douban.com/group/meituikong/discussion?start=400')
    print('群组起始地址示例:https://www.douban.com/group/meituikong/discussion?start=')
    theUrl = str(input("请输入豆瓣首页地址:"))
    theEnd = int(input('请输入最后一页的start数字值:'))
    class jdThread(threading.Thread):
        def __init__(self,index,queue):
            threading.Thread.__init__(self)
            self.index = index
            self.queue = queue
     
        def run(self):
            while True:
                time.sleep(1)
                item = self.queue.get()
                if item is None:
                    break
    #            print("序号:",self.index,"任务",item,"完成")
                getUrlList(theUrl+str(item*25))
                time.sleep(1)
                self.queue.task_done()  #task_done方法使得未完成的任务数量-1
                if q.empty(): return
    
    q = queue.Queue(0)
    '''
    初始化函数接受一个数字来作为该队列的容量,如果传递的是
    一个小于等于0的数,那么默认会认为该队列的容量是无限的.
    '''
    for i in range(2):
        jdThread(i,q).start()#两个线程同时完成任务
    for i in range( int( theEnd/25) ):
        q.put(i)#put方法使得未完成的任务数量+1
    

     

  • Chrome一直提示“adobe flash player 因过期而遭阻止”  解决方法 图文教程

    Chrome一直提示“adobe flash player 因过期而遭阻止” 解决方法 图文教程

    最近在更新了Chrome浏览器之后,提示 adobe flash player 已过期的问题,反复提示,从网上也找了很多办法都没有解决。这里给大家提供一个最完美的解决方案。经亲自测试,完美解决adobe flash player插件过期遇到阻止的问题.

    20161111204746
    Chrome一直提示“adobe flash player 因过期而遭阻止” ,解决方法 图文教程

    1. 下载:在百度搜索 ” adobe flash player ppapi “,去官方网站下载完成安装。

      直达地址:http://labs.adobe.com/downloads/flashplayer.html

    2. 下载对应操作系统的PPAPI版本,安装,然后重启浏览器,完成。

      Chrome一直提示“adobe flash player 因过期而遭阻止”
      Chrome一直提示“adobe flash player 因过期而遭阻止”

      Windows 32-bit 64 bit 安装直达链接:https://fpdownload.macromedia.com/pub/labs/flashruntimes/flashplayer/install_flash_player_ppapi.exe

    3. 目前网络上流传的几种方法其实并不能完美解决问题:

      1,浏览器地址栏输入 chrome://plugins 停用过期的 flash player插件,相当于没解决问题;

      2,更新chrome浏览器,其实这个办法很多人都懂,但是也没有用;

      3,下载更新adobe flash player插件,没用!

      4,下载官方adobe flash player 安装更新,试过都知道没用;

      5,Chrome.exe快捷方式加上指令“ –allow-outdated-plugins”不行;

      其实问题的本质在于,Chrome支持的是PPAPI版本,而不是NPAPI版本或者ActiveX;本人试了N多办法,最终完美解决这个问题,写出来希望对大家有帮助。

  • jQuery实现简约的对联广告效果 代码实例

    利用jquery实现可关闭、可随屏幕滚动的简约对联广告 ??,兼容各个浏览器

    HTML:

    <!--对联广告HTML Start-->
     <div class="duilian duilian_left">
         <div class="duilian_con"><a href="http://laoji.org" target="_blank"><img src="Jidinghe.jpg"></a></div>
         <a href="#" class="duilian_close">关闭</a>
     </div>
     <div class="duilian duilian_right">
         <div class="duilian_con"><a href="http://laoji.org" target="_blank"><img src="Jidinghe.jpg"></a></div>
         <a href="#" class="duilian_close">关闭</a>
     </div>
    <!--对联广告HTML End-->

    css:

     /*下面是对联广告的css代码*/
     .duilian{top:200px;position:absolute; width:150px; overflow:hidden; display:none;}
     .duilian_left{ left:6px;}
     .duilian_right{right:20px;}
     .duilian_con{border:#ddd solid 1px; width:150px; height:210px; overflow:hidden;}
     .duilian_close{ width:100%; height:24px; line-height:24px; text-align:center; display:block; font-size:13px; color:#555555; text-decoration:none;background-color:#eee;}

    Jquery:

     $(document).ready(function(){
         var duilian = $("div.duilian");
         var duilian_close = $("a.duilian_close");     
         var window_w = $(window).width();
         if(window_w>1000){duilian.show();}
         $(window).scroll(function(){
             var scrollTop = $(window).scrollTop();
             duilian.stop().animate({top:scrollTop+200});
         });
         duilian_close.click(function(){
             $(this).parent().hide();
             return false;
         });  
     });
    
    这个例子还用多解释么。。
WeChat
↑