精华内容
下载资源
问答
  • 5 种基于 Plotly 的可视化方法,你会发现,原来可视化不仅可用直方和箱形,还能做得如此动态好看甚至可交互。 对数据科学家来说,讲故事是一个至关重要的技能。为了表达我们的思想并且说服别人,我们需要有...

    在这里插入图片描述

    数据可以帮助我们描述这个世界、阐释自己的想法和展示自己的成果,但如果只有单调乏味的文本和数字,我们却往往能难抓住观众的眼球。而很多时候,一张漂亮的可视化图表就足以胜过千言万语。本文将介绍
    5 种基于 Plotly 的可视化方法,你会发现,原来可视化不仅可用直方图和箱形图,还能做得如此动态好看甚至可交互。

    对数据科学家来说,讲故事是一个至关重要的技能。为了表达我们的思想并且说服别人,我们需要有效的沟通。而漂漂亮亮的可视化是完成这一任务的绝佳工具。本文将介绍 5 种非传统的可视化技术,可让你的数据故事更漂亮和更有效。这里将使用 Python 的 Plotly 图形库(也可通过 R 使用),让你可以毫不费力地生成动画图表和交互式图表。
    在这里插入图片描述
    那么,Plotly 有哪些好处?Plotly 的整合能力很强:可与 Jupyter Notebook 一起使用,可嵌入网站,并且完整集成了 Dash——一种用于构建仪表盘和分析应用的出色工具。

    需要Python学习资料可以加群1084028245,群里资料免费赠予大家!(书籍太多,我就随便发一点咯!)​

    在这里插入图片描述

    启动

    如果你还没安装 Plotly,只需在你的终端运行以下命令即可完成安装:

    pip install plotly
    

    安装完成后,就开始使用吧!

                                                         动画
    

    在研究这个或那个指标的演变时,我们常涉及到时间数据。Plotly 动画工具仅需一行代码就能让人观看数据随时间的变化情况,如下图所示:
    在这里插入图片描述

    代码如下:

    import plotly.express as px
    from vega_datasets import data
    df = data.disasters()
    df = df[df.Year > 1990]
    fig = px.bar(df,
                 y="Entity",
                 x="Deaths",
                 animation_frame="Year",
                 orientation= h ,
                 range_x=[0, df.Deaths.max()],
                 color="Entity")
    # improve aesthetics (size, grids etc.)
    fig.update_layout(width=1000,
                      height=800,
                      xaxis_showgrid=False,
                      yaxis_showgrid=False,
                      paper_bgcolor= rgba(0,0,0,0) ,
                      plot_bgcolor= rgba(0,0,0,0) ,
                      title_text= Evolution of Natural Disasters ,
                      showlegend=False)
    fig.update_xaxes(title_text= Number of Deaths )
    fig.update_yaxes(title_text=  )
    fig.show()
    

    只要你有一个时间变量来过滤,那么几乎任何图表都可以做成动画。下面是一个制作散点图动画的例子:

    import plotly.express as px
    df = px.data.gapminder()
    fig = px.scatter(
        df,
        x="gdpPercap",
        y="lifeExp",
        animation_frame="year",
        size="pop",
        color="continent",
        hover_name="country",
        log_x=True,
        size_max=55,
        range_x=[100, 100000],
        range_y=[25, 90],
    
        #   color_continuous_scale=px.colors.sequential.Emrld
    )
    fig.update_layout(width=1000,
                      height=800,
                      xaxis_showgrid=False,
                      yaxis_showgrid=False,
                      paper_bgcolor= rgba(0,0,0,0) ,
                      plot_bgcolor= rgba(0,0,0,0) )
    
                                                          太阳图
    

    太阳图(sunburst chart)是一种可视化 group by 语句的好方法。如果你想通过一个或多个类别变量来分解一个给定的量,那就用太阳图吧。

    假设我们想根据性别和每天的时间分解平均小费数据,那么相较于表格,这种双重 group by 语句可以通过可视化来更有效地展示。在这里插入图片描述

    这个图表是交互式的,让你可以自己点击并探索各个类别。你只需要定义你的所有类别,并声明它们之间的层次结构(见以下代码中的 parents 参数)并分配对应的值即可,这在我们案例中即为 group by 语句的输出。

    import plotly.graph_objects as go
    import plotly.express as px
    import numpy as np
    import pandas as pd
    df = px.data.tips()
    fig = go.Figure(go.Sunburst(
        labels=["Female", "Male", "Dinner", "Lunch",  Dinner  ,  Lunch  ],
        parents=["", "", "Female", "Female",  Male ,  Male ],
        values=np.append(
            df.groupby( sex ).tip.mean().values,
            df.groupby([ sex ,  time ]).tip.mean().values),
        marker=dict(colors=px.colors.sequential.Emrld)),
                    layout=go.Layout(paper_bgcolor= rgba(0,0,0,0) ,
                                     plot_bgcolor= rgba(0,0,0,0) ))
    
    fig.update_layout(margin=dict(t=0, l=0, r=0, b=0),
                      title_text= Tipping Habbits Per Gender, Time and Day )
    fig.show()
    

    现在我们向这个层次结构再添加一层:
    在这里插入图片描述
    为此,我们再添加另一个涉及三个类别变量的 group by 语句的值。

    import plotly.graph_objects as go
    import plotly.express as px
    import pandas as pd
    import numpy as np
    df = px.data.tips()
    fig = go.Figure(go.Sunburst(labels=[
        "Female", "Male", "Dinner", "Lunch",  Dinner  ,  Lunch  ,  Fri ,  Sat ,
         Sun ,  Thu ,  Fri  ,  Thu  ,  Fri   ,  Sat   ,  Sun   ,  Fri    ,  Thu   
    ],
                                parents=[
                                    "", "", "Female", "Female",  Male ,  Male ,
                                     Dinner ,  Dinner ,  Dinner ,  Dinner ,
                                     Lunch ,  Lunch ,  Dinner  ,  Dinner  ,
                                     Dinner  ,  Lunch  ,  Lunch 
                                ],
                                values=np.append(
                                    np.append(
                                        df.groupby( sex ).tip.mean().values,
                                        df.groupby([ sex ,
                                                     time ]).tip.mean().values,
                                    ),
                                    df.groupby([ sex ,  time ,
                                                 day ]).tip.mean().values),
                                marker=dict(colors=px.colors.sequential.Emrld)),
                    layout=go.Layout(paper_bgcolor= rgba(0,0,0,0) ,
                                     plot_bgcolor= rgba(0,0,0,0) ))
    fig.update_layout(margin=dict(t=0, l=0, r=0, b=0),
                      title_text= Tipping Habbits Per Gender, Time and Day )
    
    fig.show()
    
                                                     平行类别
    

    另一种探索类别变量之间关系的方法是以下这种流程图。你可以随时拖放、高亮和浏览值,非常适合演示时使用。
    在这里插入图片描述
    代码如下:

    import plotly.express as px
    from vega_datasets import data
    import pandas as pd
    df = data.movies()
    df = df.dropna()
    df[ Genre_id ] = df.Major_Genre.factorize()[0]
    fig = px.parallel_categories(
        df,
        dimensions=[ MPAA_Rating ,  Creative_Type ,  Major_Genre ],
        color="Genre_id",
        color_continuous_scale=px.colors.sequential.Emrld,
    )
    fig.show()
    
                                                     平行坐标图
    

    平行坐标图是上面的图表的连续版本。这里,每一根弦都代表单个观察。这是一种可用于识别离群值(远离其它数据的单条线)、聚类、趋势和冗余变量(比如如果两个变量在每个观察上的值都相近,那么它们将位于同一水平线上,表示存在冗余)的好用工具。
    在这里插入图片描述
    代码如下:

    import plotly.express as px
    from vega_datasets import data
    import pandas as pd
    df = data.movies()
    df = df.dropna()
    df[ Genre_id ] = df.Major_Genre.factorize()[0]
    fig = px.parallel_coordinates(
        df,
        dimensions=[
             IMDB_Rating ,  IMDB_Votes ,  Production_Budget ,  Running_Time_min ,
             US_Gross ,  Worldwide_Gross ,  US_DVD_Sales
        ],
        color= IMDB_Rating ,
        color_continuous_scale=px.colors.sequential.Emrld)
    fig.show()
    
                                                      量表图和指示器
    

    在这里插入图片描述
    量表图仅仅是为了好看。在报告 KPI 等成功指标并展示其与你的目标的距离时,可以使用这种图表。

    指示器在业务和咨询中非常有用。它们可以通过文字记号来补充视觉效果,吸引观众的注意力并展现你的增长指标。

    import plotly.graph_objects as go
    fig = go.Figure(go.Indicator(
        domain = { x : [0, 1],  y : [0, 1]},
        value = 4.3,
        mode = "gauge+number+delta",
        title = { text : "Success Metric"},
        delta = { reference : 3.9},
        gauge = { bar : { color : "lightgreen"},
             axis : { range : [None, 5]},
                  steps  : [
                     { range : [0, 2.5],  color : "lightgray"},
                     { range : [2.5, 4],  color : "gray"}],
              }))
    fig.show()
    

    最后 如果你还是不会编写这个脚本,可以关注小编+转发此文,就可以拿到完成代码,或者找我指导实现定位!

    已经在学习Python,或者想学Python的小伙伴们,如需要文中书籍、Python学习资料可以加群1084028245,小编将免费送给大家!在这里插入图片描述在这里插入图片描述

    展开全文
  • 本文将介绍 5 种基于 Plotly 的可视化方法,你会发现,原来可视化不仅可用直方和箱形,还能做得如此动态好看甚至可交互。 对数据科学家来说,讲故事是一个至关重要的技能。为了表达我们的思想并且说服别人,我们...

    点击上方“AI遇见机器学习”,选择“星标”公众号

    重磅干货,第一时间送达

    作者丨Liana Mehrabyan

    转自 | 机器之心     参与 | Panda

    数据可以帮助我们描述这个世界、阐释自己的想法和展示自己的成果,但如果只有单调乏味的文本和数字,我们却往往能难抓住观众的眼球。而很多时候,一张漂亮的可视化图表就足以胜过千言万语。本文将介绍 5 种基于 Plotly 的可视化方法,你会发现,原来可视化不仅可用直方图和箱形图,还能做得如此动态好看甚至可交互。

    对数据科学家来说,讲故事是一个至关重要的技能。为了表达我们的思想并且说服别人,我们需要有效的沟通。而漂漂亮亮的可视化是完成这一任务的绝佳工具。本文将介绍 5 种非传统的可视化技术,可让你的数据故事更漂亮和更有效。这里将使用 Python 的 Plotly 图形库(也可通过 R 使用),让你可以毫不费力地生成动画图表和交互式图表。

    那么,Plotly 有哪些好处?Plotly 的整合能力很强:可与 Jupyter Notebook 一起使用,可嵌入网站,并且完整集成了 Dash——一种用于构建仪表盘和分析应用的出色工具。

    启动

    如果你还没安装 Plotly,只需在你的终端运行以下命令即可完成安装:

    pip install plotly
    

    安装完成后,就开始使用吧!

       动画

    在研究这个或那个指标的演变时,我们常涉及到时间数据。Plotly 动画工具仅需一行代码就能让人观看数据随时间的变化情况,如下图所示:

    代码如下:

    import plotly.express as px
    from vega_datasets import data
    df = data.disasters()
    df = df[df.Year > 1990]
    fig = px.bar(df,
                 y="Entity",
                 x="Deaths",
                 animation_frame="Year",
                 orientation= h ,
                 range_x=[0, df.Deaths.max()],
                 color="Entity")
    # improve aesthetics (size, grids etc.)
    fig.update_layout(width=1000,
                      height=800,
                      xaxis_showgrid=False,
                      yaxis_showgrid=False,
                      paper_bgcolor= rgba(0,0,0,0) ,
                      plot_bgcolor= rgba(0,0,0,0) ,
                      title_text= Evolution of Natural Disasters ,
                      showlegend=False)
    fig.update_xaxes(title_text= Number of Deaths )
    fig.update_yaxes(title_text=)
    fig.show()
    

    只要你有一个时间变量来过滤,那么几乎任何图表都可以做成动画。下面是一个制作散点图动画的例子:

    import plotly.express as px
    df = px.data.gapminder()
    fig = px.scatter(
        df,
        x="gdpPercap",
        y="lifeExp",
        animation_frame="year",
        size="pop",
        color="continent",
        hover_name="country",
        log_x=True,
        size_max=55,
        range_x=[100, 100000],
        range_y=[25, 90],
    
        #   color_continuous_scale=px.colors.sequential.Emrld
    )
    fig.update_layout(width=1000,
                      height=800,
                      xaxis_showgrid=False,
                      yaxis_showgrid=False,
                      paper_bgcolor= rgba(0,0,0,0) ,
                      plot_bgcolor= rgba(0,0,0,0) )
    
    

       太阳图

    太阳图(sunburst chart)是一种可视化 group by 语句的好方法。如果你想通过一个或多个类别变量来分解一个给定的量,那就用太阳图吧。

    假设我们想根据性别和每天的时间分解平均小费数据,那么相较于表格,这种双重 group by 语句可以通过可视化来更有效地展示。

    这个图表是交互式的,让你可以自己点击并探索各个类别。你只需要定义你的所有类别,并声明它们之间的层次结构(见以下代码中的 parents 参数)并分配对应的值即可,这在我们案例中即为 group by 语句的输出。

    import plotly.graph_objects as go
    import plotly.express as px
    import numpy as np
    import pandas as pd
    df = px.data.tips()
    fig = go.Figure(go.Sunburst(
        labels=["Female", "Male", "Dinner", "Lunch",  Dinner  ,  Lunch  ],
        parents=["", "", "Female", "Female",  Male ,  Male ],
        values=np.append(
            df.groupby( sex ).tip.mean().values,
            df.groupby([ sex ,  time ]).tip.mean().values),
        marker=dict(colors=px.colors.sequential.Emrld)),
                    layout=go.Layout(paper_bgcolor= rgba(0,0,0,0) ,
                                     plot_bgcolor= rgba(0,0,0,0) ))
    
    fig.update_layout(margin=dict(t=0, l=0, r=0, b=0),
                      title_text= Tipping Habbits Per Gender, Time and Day )
    fig.show()
    
    

    现在我们向这个层次结构再添加一层:

    为此,我们再添加另一个涉及三个类别变量的 group by 语句的值。

    import plotly.graph_objects as go
    import plotly.express as px
    import pandas as pd
    import numpy as np
    df = px.data.tips()
    fig = go.Figure(go.Sunburst(labels=[
        "Female", "Male", "Dinner", "Lunch",  Dinner  ,  Lunch  ,  Fri ,  Sat ,
         Sun ,  Thu ,  Fri  ,  Thu  ,  Fri   ,  Sat   ,  Sun   ,  Fri    ,  Thu   
    ],
                                parents=[
                                    "", "", "Female", "Female",  Male ,  Male ,
                                     Dinner ,  Dinner ,  Dinner ,  Dinner ,
                                     Lunch ,  Lunch ,  Dinner  ,  Dinner  ,
                                     Dinner  ,  Lunch  ,  Lunch 
                                ],
                                values=np.append(
                                    np.append(
                                        df.groupby( sex ).tip.mean().values,
                                        df.groupby([ sex ,
                                                     time ]).tip.mean().values,
                                    ),
                                    df.groupby([ sex ,  time ,
                                                 day ]).tip.mean().values),
                                marker=dict(colors=px.colors.sequential.Emrld)),
                    layout=go.Layout(paper_bgcolor= rgba(0,0,0,0) ,
                                     plot_bgcolor= rgba(0,0,0,0) ))
    fig.update_layout(margin=dict(t=0, l=0, r=0, b=0),
                      title_text= Tipping Habbits Per Gender, Time and Day )
    
    fig.show()
    
    

       平行类别

    另一种探索类别变量之间关系的方法是以下这种流程图。你可以随时拖放、高亮和浏览值,非常适合演示时使用。

    代码如下:

    import plotly.express as px
    from vega_datasets import data
    import pandas as pd
    df = data.movies()
    df = df.dropna()
    df[ Genre_id ] = df.Major_Genre.factorize()[0]
    fig = px.parallel_categories(
        df,
        dimensions=[ MPAA_Rating ,  Creative_Type ,  Major_Genre ],
        color="Genre_id",
        color_continuous_scale=px.colors.sequential.Emrld,
    )
    fig.show()
    
    

       平行坐标图

    平行坐标图是上面的图表的连续版本。这里,每一根弦都代表单个观察。这是一种可用于识别离群值(远离其它数据的单条线)、聚类、趋势和冗余变量(比如如果两个变量在每个观察上的值都相近,那么它们将位于同一水平线上,表示存在冗余)的好用工具。

    代码如下:

     import plotly.express as px
    from vega_datasets import data
    import pandas as pd
    df = data.movies()
    df = df.dropna()
    df[ Genre_id ] = df.Major_Genre.factorize()[0]
    fig = px.parallel_coordinates(
        df,
        dimensions=[
             IMDB_Rating ,  IMDB_Votes ,  Production_Budget ,  Running_Time_min ,
             US_Gross ,  Worldwide_Gross ,  US_DVD_Sales
        ],
        color= IMDB_Rating ,
        color_continuous_scale=px.colors.sequential.Emrld)
    fig.show()
    
    

       量表图和指示器

    量表图仅仅是为了好看。在报告 KPI 等成功指标并展示其与你的目标的距离时,可以使用这种图表。

    指示器在业务和咨询中非常有用。它们可以通过文字记号来补充视觉效果,吸引观众的注意力并展现你的增长指标。

     import plotly.graph_objects as go
    fig = go.Figure(go.Indicator(
        domain = { x : [0, 1],  y : [0, 1]},
        value = 4.3,
        mode = "gauge+number+delta",
        title = { text : "Success Metric"},
        delta = { reference : 3.9},
        gauge = { bar : { color : "lightgreen"},
             axis : { range : [None, 5]},
                  steps  : [
                     { range : [0, 2.5],  color : "lightgray"},
                     { range : [2.5, 4],  color : "gray"}],
              }))
    fig.show()
    
    

    原文链接:https://towardsdatascience.com/5-visualisations-to-level-up-your-data-story-e131759c2f41

    欢迎关注我们,看通俗干货

    展开全文
  • 这是一套蓝黑搭配,动态炫酷金属质感的,欧美PPT模板,共29张。第一PPT模板网提供欧美风格幻灯片模板免费下载; 关键词:黑色渐变幻灯片背景,蓝色金属质感立体PowerPoint图表,动态商务PPT模板,炫酷幻灯片动画,....
  • js动态炫酷数字时钟

    2019-12-12 10:34:12
    这是一款使用js和CSS制作的动态炫酷数字时钟。该js数字时钟采用LED数字时钟样式,效果十分逼真。
  • 欧美风格动态炫酷金属质感PPT模板是由收整的一款PPT模板,风格炫酷,采用欧美的风格,适合在各类大小场合使用,欢迎各位参观学习和下载使用。该文档为欧美风格动态炫酷金属质感PPT模板,是一份很不错的参考资料,...
  • 动态炫酷地球旋转背景PPT模板.ppt
  • HTML5鼠标动态炫酷特效
  • 主要为大家详细解析了Android自定义View制作动态炫酷按钮实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 这是一张动态炫酷谢谢欣赏PPT结束页模板,第一PPT模板网提供幻灯片背景图片免费下载; 关键词:PPT结束页模板,谢谢欣赏幻灯片模板下载,.PPTX格式;
  • 这是一张动态炫酷谢谢欣赏PPT结束页模板,第一PPT模板网提供幻灯片背景图片免费下载; 关键词:PPT结束页模板,谢谢欣赏幻灯片模板下载,.PPTX格式;
  • 欧美风格动态炫酷金属质感PPT模板.pptx
  • 动态炫酷大学生求职简历ppt模板.ppt
  • ps如何制作炫酷gif动态光效图片

    千次阅读 2018-05-18 22:52:29
    制作简单效果又棒,方便我们快速制作一些动态GIF图片效果,喜欢用PS动作制作各种GIF动画效果的小伙伴可以了解一下,下面是一些效果:01、解压我们下载来的“制作炫酷动态光效背景GIF效果PS动作”载入动作(.atn)...

    制作简单效果又棒,方便我们快速制作一些动态GIF图片效果,喜欢用PS动作制作各种GIF动画效果的小伙伴可以了解一下,下面是一些效果图:





    01、解压我们下载来的“制作炫酷动态光效背景GIF效果PS动作”载入动作(.atn)。

    02、打开我们之前准备好的图片素材,选择动作面板,选择动作“制作炫酷动态光效背景GIF效果PS动作”第一个选项,然后点击播放动作。

    03、弹出的窗口点击“继续”,选中我们的素材文件,适当调整大小、位置。

    04、浏览一下动画效果,然后再进行大小、位置调整。

    05、接下来重复操作第二、三、四步骤,最终完成效果。



    06、最后就是导出GIF效果,具体参数可以参考一下图片。



    展开全文
  • 这是一张动态炫酷谢谢欣赏PPT结束页模板,第一PPT模板网提供幻灯片背景图片免费下载; 关键词:PPT结束页模板,谢谢欣赏幻灯片模板下载,.PPTX格式;
  • 动态炫酷天空引导页源码,上传到网站设置一下,可做导航页,也可做404页。可以通过记事本或者其他相关软件进行修改
  • 动态炫酷光影效果PPT模板。一套非常精美炫酷的幻灯片模板,动态光影效果设计,很有视觉冲击力。
  • 这是一款使用js和CSS制作的动态炫酷数字时钟。该js数字时钟采用LED数字时钟样式,效果十分逼真。使用方法HTML结构该js数字时钟的HTML结构如下:CSS样式为该js数字时钟添加下面的css样式。.clock {height:200px;...

    这是一款使用js和CSS制作的动态炫酷数字时钟。该js数字时钟采用LED数字时钟样式,效果十分逼真。

    使用方法

    HTML结构

    该js数字时钟的HTML结构如下:

    CSS样式

    为该js数字时钟添加下面的css样式。

    .clock {

    height:200px;

    position:absolute;

    top:50%;

    left:50%;

    width:900px;

    margin-left:-450px;

    margin-top:-100px;

    text-align:center;

    }

    .digit {

    width:120px;

    height:200px;

    margin:0 5px;

    position:relative;

    display:inline-block;

    }

    .digit .segment {

    background:#c00;

    border-radius:5px;

    position:absolute;

    opacity:0.15;

    transition:opacity 0.2s;

    -webkit-transition:opacity 0.2s;

    -ms-transition:opacity 0.2s;

    -moz-transition:opacity 0.2s;

    -o-transition:opacity 0.2s;

    }

    .digit .segment.on, .separator {

    opacity:1;

    box-shadow:0 0 50px rgba(255,0,0,0.7);

    transition:opacity 0s;

    -webkit-transition:opacity 0s;

    -ms-transition:opacity 0s;

    -moz-transition:opacity 0s;

    -o-transition:opacity 0s;

    }

    .separator {

    width:20px;

    height:20px;

    background:#c00;

    border-radius:50%;

    display:inline-block;

    position:relative;

    top:-90px;

    }

    .digit .segment:nth-child(1) {

    top:10px;

    left:20px;

    right:20px;

    height:10px;

    }

    .digit .segment:nth-child(2) {

    top:20px;

    right:10px;

    width:10px;

    height:75px;

    height:calc(50% - 25px);

    }

    .digit .segment:nth-child(3) {

    bottom:20px;

    right:10px;

    width:10px;

    height:75px;

    height:calc(50% - 25px);

    }

    .digit .segment:nth-child(4) {

    bottom:10px;

    right:20px;

    height:10px;

    left:20px;

    }

    .digit .segment:nth-child(5) {

    bottom:20px;

    left:10px;

    width:10px;

    height:75px;

    height:calc(50% - 25px);

    }

    .digit .segment:nth-child(6) {

    top:20px;

    left:10px;

    width:10px;

    height:75px;

    height:calc(50% - 25px);

    }

    .digit .segment:nth-child(7) {

    bottom:95px;

    bottom:calc(50% - 5px);

    right:20px;

    left:20px;

    height:10px;

    }

    初始化插件

    然后通过下面的js代码来初始化该js数字时钟。

    var digitSegments = [

    [1,2,3,4,5,6],

    [2,3],

    [1,2,7,5,4],

    [1,2,7,3,4],

    [6,7,2,3],

    [1,6,7,3,4],

    [1,6,5,4,3,7],

    [1,2,3],

    [1,2,3,4,5,6,7],

    [1,2,7,3,6]

    ]

    document.addEventListener('DOMContentLoaded', function() {

    var _hours = document.querySelectorAll('.hours');

    var _minutes = document.querySelectorAll('.minutes');

    var _seconds = document.querySelectorAll('.seconds');

    setInterval(function() {

    var date = new Date();

    var hours = date.getHours(), minutes = date.getMinutes(), seconds = date.getSeconds();

    setNumber(_hours[0], Math.floor(hours/10), 1);

    setNumber(_hours[1], hours%10, 1);

    setNumber(_minutes[0], Math.floor(minutes/10), 1);

    setNumber(_minutes[1], minutes%10, 1);

    setNumber(_seconds[0], Math.floor(seconds/10), 1);

    setNumber(_seconds[1], seconds%10, 1);

    }, 1000);

    });

    var setNumber = function(digit, number, on) {

    var segments = digit.querySelectorAll('.segment');

    var current = parseInt(digit.getAttribute('data-value'));

    // only switch if number has changed or wasn't set

    if (!isNaN(current) && current != number) {

    // unset previous number

    digitSegments[current].forEach(function(digitSegment, index) {

    setTimeout(function() {

    segments[digitSegment-1].classList.remove('on');

    }, index*45)

    });

    }

    if (isNaN(current) || current != number) {

    // set new number after

    setTimeout(function() {

    digitSegments[number].forEach(function(digitSegment, index) {

    setTimeout(function() {

    segments[digitSegment-1].classList.add('on');

    }, index*45)

    });

    }, 250);

    digit.setAttribute('data-value', number);

    }

    }

    展开全文
  • 主要介绍了基于C#实现炫酷启动-动态进度条 效果,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
  • 动态图如果设计得好,那就是惊艳。文章来源:设计有物ID:shejiyouwu作者:Zoey原文题目:这位大神的动态图像设计,太惊艳了。前几天,小编在网上冲浪时发现了一位大佬,他的动态图像设计让人看了简直大呼过瘾。这位...
  • 这是一套蓝黑搭配,动态炫酷金属质感的,欧美PPT模板,共29张。第一PPT模板网提供欧美风格幻灯片模板免费下载; 关键词:黑色渐变幻灯片背景,蓝色金属质感立体PowerPoint图表,动态商务PPT模板,炫酷幻灯片动画,....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 11,656
精华内容 4,662
关键字:

动态炫酷图