精华内容
下载资源
问答
  • 左手数据,右手图表:Excel动态图表制作与职场数据沟通 徐军泰 著 ISBN:978-7-111-44720-7
  • excel动态图表制作

    2010-08-24 03:19:21
    以四个实例详解在excel中制作动态图表的全过程。
  • 动态图表制作小工具

    2019-01-06 19:40:12
    绿色免安装小工具 swiff chart是一款专业的可以帮助用户绘制各种动态统计图表的统计图表绘制工具。还想看着Excel那个死板板的图表吗?想让PowerPoint动起来吗?SwiffChart可以帮您这个忙。swiffchart汉化版支持包括...
  • Excel图表制作(二):动态图表制作

    千次阅读 2016-01-21 10:01:58
    本部分动态图的制作思路是使用函数和名称管理器对数据进行分类,使用控件控制分类选择,并更改图表的数据源。 常用函数: 1.offset(reference, rows, cols [,height] [,width]) offset函数是一个引用函数,表示引用...
    
    

    在图表要表示的数据较多时,可采用动态图的方式按照类别或其他分类方式动态显示不同部分的数据。本部分动态图的制作思路是使用函数和名称管理器对数据进行分类,使用控件控制分类选择,并更改图表的数据源。

    常用函数

    1.offset(reference, rows, cols [,height] [,width])

    offset函数是一个引用函数,表示引用某一个单元格或者区域。以指定的应用为参考系,通过上下左右偏移得到新的区域的引用。

    Eg:

    =OFFSET(A1,2,2,1,1),其中A1是参考系,接着的2,2分别表示下,右移动的行数和列数,同样向上,左则是负数。最后面的1,1表示引用的区域大小是一行一列,也就是一个单元格。

    =OFFSET(B1:C2,2,1,2,4),其中B1:C2是参考系。

    如果省略heightwidth表示引用区域大小与参考系一致

     

    2.index()

    index函数是用来引用我们所需的信息,主要分连续区域和非连续区域内的引用两种。

    连续区域的引用:

    =index(array,row_num [,column_num])

    其中array表示我们要引用的区域,row_num表示要引用的行数,column_num表示要引用的列数,最终的结果就是引用出区域内行列交叉处的内容。

    Row_num column_num至少需要一个参数,=index(A2:D10,3) =index(A2:D10,,2)

    非连续区域的引用:

    =index((array_1,array_2,array_3....array_n),row_num [,column_num] [,array_num])

    其中array表示我们要引用的非连续区域,其必须用小括号括起来,row_num表示要引用的行数,column_num表示要引用的列数,array_num表示第几个区域

     

     

    3.choose((index_num,value1 [,value2],...))

    根据索引号从最多 254 个数值中选择一个。特别适合从固定参数中选择其中之一的情况,这有点类似于枚举类型的数据类型。

    Index_num:指定所选定的值参数。Index_num 必须为 1 到 254 之间的数字,或者是包含数字 1 到 254 的公式或单元格引用。

    如果 index_num 为 1,函数 CHOOSE 返回 value1;如果为 2,函数 CHOOSE 返回 value2,以此类推。

    Eg:

    =CHOOSE(2,B1:B2,B2:B3,B3:B4)结果为B2:B3

     

    以下为几个动态图表的例子:

     

    使用下拉菜单动态选择月份:

     

    使用单选框和下拉菜单动态选择:

     

     

    使用滚动条动态选择月份,前一个为平移月份,后一个为向右每次递增的显示月份数据:

     

     

     

     

     


    展开全文
  • 在读技术博客的过程中,我们会发现那些能够把知识、成果讲透的博主很多都会做动态图表。他们的图是怎么做的?难度大吗?这篇文章就介绍了 Python 中一种简单的动态图表制作方法。数据暴增的年...

    在读技术博客的过程中,我们会发现那些能够把知识、成果讲透的博主很多都会做动态图表。他们的图是怎么做的?难度大吗?这篇文章就介绍了 Python 中一种简单的动态图表制作方法。

    数据暴增的年代,数据科学家、分析师在被要求对数据有更深的理解与分析的同时,还需要将结果有效地传递给他人。如何让目标听众更直观地理解?当然是将数据可视化啊,而且最好是动态可视化。

    本文将以线型图、条形图和饼图为例,系统地讲解如何让你的数据图表动起来。

    这些动态图表是用什么做的?

    接触过数据可视化的同学应该对 Python 里的 Matplotlib 库并不陌生。它是一个基于 Python 的开源数据绘图包,仅需几行代码就可以帮助开发者生成直方图、功率谱、条形图、散点图等。这个库里有个非常实用的扩展包——FuncAnimation,可以让我们的静态图表动起来。

    FuncAnimation 是 Matplotlib 库中 Animation 类的一部分,后续会展示多个示例。如果是首次接触,你可以将这个函数简单地理解为一个 While 循环,不停地在 “画布” 上重新绘制目标数据图。

    如何使用 FuncAnimation?

    这个过程始于以下两行代码:

    import matplotlib.animation as ani
    
    animator = ani.FuncAnimation(fig, chartfunc, interval = 100)

    从中我们可以看到 FuncAnimation 的几个输入:

    • fig 是用来 「绘制图表」的 figure 对象;

    • chartfunc 是一个以数字为输入的函数,其含义为时间序列上的时间;

    • interval 这个更好理解,是帧之间的间隔延迟,以毫秒为单位,默认值为 200。

    这是三个关键输入,当然还有更多可选输入,感兴趣的读者可查看原文档,这里不再赘述。

    下一步要做的就是将数据图表参数化,从而转换为一个函数,然后将该函数时间序列中的点作为输入,设置完成后就可以正式开始了。

    在开始之前依旧需要确认你是否对基本的数据可视化有所了解。也就是说,我们先要将数据进行可视化处理,再进行动态处理。

    按照以下代码进行基本调用。另外,这里将采用大型流行病的传播数据作为案例数据(包括每天的死亡人数)。

    import matplotlib.animation as ani
    import matplotlib.pyplot as plt
    import numpy as np
    import pandas as pdurl = 'https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_deaths_global.csv'
    df = pd.read_csv(url, delimiter=',', header='infer')df_interest = df.loc[
        df['Country/Region'].isin(['United Kingdom', 'US', 'Italy', 'Germany'])
        & df['Province/State'].isna()]df_interest.rename(
        index=lambda x: df_interest.at[x, 'Country/Region'], inplace=True)
    df1 = df_interest.transpose()df1 = df1.drop(['Province/State', 'Country/Region', 'Lat', 'Long'])
    df1 = df1.loc[(df1 != 0).any(1)]
    df1.index = pd.to_datetime(df1.index)

    绘制三种常见动态图表

    动态曲线图

    如下所示,首先需要做的第一件事是定义图的各项,这些基础项设定之后就会保持不变。它们包括:创建 figure 对象,x 标和 y 标,设置线条颜色和 figure 边距等:

    import numpy as np
    import matplotlib.pyplot as pltcolor = ['red', 'green', 'blue', 'orange']
    fig = plt.figure()
    plt.xticks(rotation=45, ha="right", rotation_mode="anchor") #rotate the x-axis values
    plt.subplots_adjust(bottom = 0.2, top = 0.9) #ensuring the dates (on the x-axis) fit in the screen
    plt.ylabel('No of Deaths')
    plt.xlabel('Dates')

    接下来设置 curve 函数,进而使用 .FuncAnimation 让它动起来:

    def buildmebarchart(i=int):
        plt.legend(df1.columns)
        p = plt.plot(df1[:i].index, df1[:i].values) #note it only returns the dataset, up to the point i
        for i in range(0,4):
            p[i].set_color(color[i]) #set the colour of each curveimport matplotlib.animation as ani
    animator = ani.FuncAnimation(fig, buildmebarchart, interval = 100)
    plt.show()

    动态饼状图

    可以观察到,其代码结构看起来与线型图并无太大差异,但依旧有细小的差别。

    import numpy as np
    import matplotlib.pyplot as pltfig,ax = plt.subplots()
    explode=[0.01,0.01,0.01,0.01] #pop out each slice from the piedef getmepie(i):
        def absolute_value(val): #turn % back to a number
            a  = np.round(val/100.*df1.head(i).max().sum(), 0)
            return int(a)
        ax.clear()
        plot = df1.head(i).max().plot.pie(y=df1.columns,autopct=absolute_value, label='',explode = explode, shadow = True)
        plot.set_title('Total Number of Deaths\n' + str(df1.index[min( i, len(df1.index)-1 )].strftime('%y-%m-%d')), fontsize=12)import matplotlib.animation as ani
    animator = ani.FuncAnimation(fig, getmepie, interval = 200)
    plt.show()

    主要区别在于,动态饼状图的代码每次循环都会返回一组数值,但在线型图中返回的是我们所在点之前的整个时间序列。返回时间序列通过 df1.head(i) 来实现,而. max()则保证了我们仅获得最新的数据,因为流行病导致死亡的总数只有两种变化:维持现有数量或持续上升。

    df1.head(i).max()

    动态条形图

    创建动态条形图的难度与上述两个案例并无太大差别。在这个案例中,作者定义了水平和垂直两种条形图,读者可以根据自己的实际需求来选择图表类型并定义变量栏。

    fig = plt.figure()
    bar = ''def buildmebarchart(i=int):
        iv = min(i, len(df1.index)-1) #the loop iterates an extra one time, which causes the dataframes to go out of bounds. This was the easiest (most lazy) way to solve this :)
        objects = df1.max().index
        y_pos = np.arange(len(objects))
        performance = df1.iloc[[iv]].values.tolist()[0]
        if bar == 'vertical':
            plt.bar(y_pos, performance, align='center', color=['red', 'green', 'blue', 'orange'])
            plt.xticks(y_pos, objects)
            plt.ylabel('Deaths')
            plt.xlabel('Countries')
            plt.title('Deaths per Country \n' + str(df1.index[iv].strftime('%y-%m-%d')))
        else:
            plt.barh(y_pos, performance, align='center', color=['red', 'green', 'blue', 'orange'])
            plt.yticks(y_pos, objects)
            plt.xlabel('Deaths')
            plt.ylabel('Countries')animator = ani.FuncAnimation(fig, buildmebarchart, interval=100)plt.show()

    保存动画图

    在制作完成后,存储这些动态图就非常简单了,可直接使用以下代码:

    animator.save(r'C:\temp\myfirstAnimation.gif')

    感兴趣的读者如想获得详细信息可参考https://matplotlib.org/3.1.1/api/animation_api.html

    转自:机器之心 公众号;

    END

    版权声明:本号内容部分来自互联网,转载请注明原文链接和作者,如有侵权或出处有误请和我们联系。


    合作请加QQ:365242293  

    数据分析(ID : ecshujufenxi )互联网科技与数据圈自己的微信,也是WeMedia自媒体联盟成员之一,WeMedia联盟覆盖5000万人群。

    展开全文
  • 本文总结三种常用的动态图表制作方法:数据透视表+切片器,vlookup+match+数据验证,Offset 一、数据透视表+切片器 1、查看原始文件——一份不同城市的近几月的销量记录表 2、建立数据透视表——全选数据-插入-数据...

    数据分析目录(文末有超级彩蛋!):
    一、Excel系列——四大常用函数及十大高级图表
    二、SQL系列——性能优化/多表关联/窗口分析函数等
    三、统计学系列——概率论/置信区间/相关/抽样等
    四、Pandas系列——数据读取/清洗/规整/分析实战等
    五、Python做图系列——箱型图/散点图/回归图/热力图等
    六、业务积累系列——流水预测/精细化运营/排序算法等
    七、Kmeans系列——原理/评价指标/RFM实战等
    八、决策树系列——算法原理/调参/python实现/项目实战
    九、贝叶斯系列——算法原理/3种模型/文本分类实战
    十、神经网络系列——BP算法原理/最小二乘法/项目实战

    tableau具有非常强大的自定义筛选功能,使得动态图表相当地酷炫。那Excel可以做出一样酷炫的动态图表吗?答案必须是个大大的Yes!
    本文总结三种常用的动态图表制作方法:数据透视表+切片器,vlookup+match+数据验证,Offset

    一、数据透视表+切片器

    1、查看原始文件——一份不同城市的近几月的销量记录表

    2、建立数据透视表——全选数据-插入-数据透视表-选择现有工作表-将商品和销售额分别拉入行和值-右键销售额修改字段为求和,得到各商品的累计销售金额


    在这里插入图片描述

    3、插入切片——点击透视表任一位置会打开数据透视表菜单-点击分析-插入切片器-筛选城市和月份,得到这2个字段的切片器,此时筛选会使得透视表数据自动改变

    在这里插入图片描述 在这里插入图片描述

    4、建立图表——点击透视表任一位-插入-二维柱状图-右键隐藏图表上所有字段按钮,得到初步的图形
    在这里插入图片描述
    在这里插入图片描述

    5、美化图表——将切片器移至图表右侧-点点击图表选择喜欢的模式,搞定!在这里插入图片描述

    二、vlookup+match+数据验证

    1、先看原始数据——将刚才的原始数据插入透视表,并将城市和销售额拉入行和值,值汇总,复制得到要用的数据
    在这里插入图片描述
    2、新建数据验证——选择一个空格-数据-数据验证-允许选择序列-数据来源点击右边的按钮框选所有的月份-得到一个带倒三角的筛选框
    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述

    3、建立绘图数据——先复制城市-月份设置等于数据验证的单元格-数据部分利用vlookup+match匹配出想要筛选的月份的销售额,如下图所示:
    在这里插入图片描述
    在这里插入图片描述
    4、建立图表——选择绘图数据-插入-饼图-找到一个空的单元格,输入公式=Sheet4!$GKaTeX parse error: Expected 'EOF', got '&' at position 3: 10&̲"各城市的销售金额占比",得到…E$12,即可根据筛选后的月份进行图表动态调整
    在这里插入图片描述在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    三、Offset函数

    Offset一般用于动态展示近一段时间(如近7天,近1个月等)的数据,当新增数据后,可自动刷新图表,不用每一次新增数据都重新做图,是不是超级方便!
    1、先看原始数据—1到6月的销售金额

    在这里插入图片描述
    2、定义两个字段的函数名称——公式-名称管理器-新建2个函数

    月份1:=OFFSET(Sheet3!$A$1,COUNTA(Sheet3!$A:$A)-1,0,IF(COUNTA(Sheet3!$A:$A)-1<5,(COUNTA(Sheet3!$A:$A)-1)*(-1),-5))
    金额1:
    =OFFSET(Sheet3!$B$1,COUNTA(Sheet3!$B:$B)-1,0,IF(COUNTA(Sheet3!$B:$B)-1<5,(COUNTA(Sheet3!$B:$B)-1)*(-1),-5))
    


    在这里插入图片描述
    3、创建图表——选择数据-插入二维柱状图-编辑数据-左边编辑-选择名称和刚才定义的月份1-再点击右边编辑-选择名称和刚才定义的金额1-确认
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    4、增加10月和11月的数据,图表自动更新成7月-11月的数据了
    在这里插入图片描述

    这就是三种动态图表制作方法的汇总,第1种数据透视表相对操作简单且美观,适用于分析维度相对较多的分析场景;第3种offset函数更适用于不断更新的数据,只是函数写起来略有点麻烦,第2种其实可以用第1种替代


    本人互联网数据分析师,目前已出ExcelSQLPandasMatplotlibSeaborn机器学习统计学个性推荐关联算法工作总结系列。


    微信搜索 " 数据小斑马" 公众号,回复“数据分析"就可以免费领取数据分析升级打怪 15本必备教材

    在这里插入图片描述

    展开全文
  • 下面我们就以一个销售图表为例,看看PowerPoint 2016中,如何快速制作动态图表。实际工作中,我们会接触到大量的Excel图表。有时在做工作汇报的时候,需要将Excel图表导入到PPT中。这非常简单,在Excel中选中图表...

    PPT演示中,动态图表会比静态的更有视觉冲击力。下面我们就以一个销售图表为例,看看PowerPoint 2016中,如何快速制作出动态图表。

    实际工作中,我们会接触到大量的Excel图表。有时在做工作汇报的时候,需要将Excel图表导入到PPT中。这非常简单,在Excel中选中图表后按Ctrl+C键复制,再在PPT中按Ctrl+V键粘贴就可以了。

    16af166919587bddd87b817db9e11696.png

    在PowerPoint中,点选粘贴过来的图表,然后切换到动画选项卡,选中擦除项,再点击效果选项,从下拉菜单中选择按系列中的元素,就会即时看到柱状图一条一条往上涨的动态效果了。

    3c8ae85b285c2f82f0d3050b9ee4c204.png

    观看刚才的动画会发现一个问题,就是背景格也是动态的,这很不合理,需要调整一下。此时点击工具栏上的动画窗格,在右侧打开的动画窗格中可以看到所有的动画选项了。

    4d7855f14ddacb5af3dbff0ed29b795d.png

    任意选中一个选项,点击其右侧的下拉箭头,选择效果选项。

    cbd55ee862936bd966e433abe7d1c715.png

    在打开的效果选项窗口中,可以设置伴随动画播放的音响效果,切换到计时选项卡中,可以设置每个柱形条的动态时长,最关键的是切换到图表动画选项卡中,将通过绘制图表背景启动动画效果项取消勾选,然后点击确定。

    3923c7a6576ea0cc8f3b9931777974bb.png

    如此设置后,再播放动画效果时,图表的背景格线就不会动啦。按F5键欣赏一下效果吧,很酷吧。

    展开全文
  • 在职场中,作为职员,我们每个人都渴望 被认可、被欣赏,精神上的鼓励是我们自我提 升和前进的重要动力。也是因为领导的认可, 笔者更加意识到动态图表的价值,尤其是在职 场、在数据可视化领域中带来的强烈冲击
  • 选自TowardsDataScience作者:Costas Andreou机器之心编译参与:Jamin、张倩在读技术博客的过程中,我们会发现那些能够把知识、成果讲透的博主很多都会做动态图...
  • 要做动态图表,只要基础的数据源改变,图表就能跟着改变,所以我们利用控件和函数来改变数据源 原表 现在要实现选择不同区域,制作不同的柱状图 a、复制表头到右边,我们需要将数据源...
  • d、在旁边单元格输入offset()的具体内容,目的是获取需要制作图表的数据源 等下将这公式复制给SALSE即可 e、定义一个SALSE的公式,并且将引用位置设置为offset()函数 复制offset()的...
  • 动态图表ptt制作工具

    2013-01-11 09:29:56
    动态图表ptt制作工具
  • 动态柱状图表制作原理,找了好久,才找到的!!!
  • 有时候要根据大量数据制作图表,但是一般的一张excel图中容量有限,利用动态图表制作方便又直观。
  • 滚动条实现动态图表 利用offset()和名称管理器,使用滚动条动态选择月份,前一个为平移月份,后一个为向右每次递增的显示月份数据,本例中数据为1-12月份测试执行Hour。   图表一制作步骤: 1.选择1-3月的...
  • PPT制作动态图表

    2017-12-05 15:52:38
    在excel中可以通过窗体或ActiveX控件达到动态控制图表显示的目的,但当Excel图表作为对象内嵌到PPT后,在PPT播放模式下,所有在Excel对象中的控件都是不可选的,只能在PPT的编辑模式下双击对象后在Application.Excel...
  • 下拉菜单实现动态图表 使用名称管理器和index()函数实现数据动态选择,本例中的数据为1-6月份工作时间分配表,主要包括测试执行,自我学习,会议和其他三类数据。 使用下拉菜单动态选择月份:   制作步骤:...
  • EXCEL动态图表,鼠标随动;EXCEL动态图表制作,很好的图表制作效果。
  • 本课程分为九个章节系统详细介绍Excel图表的基础知识及相关概念、原理,您只有知识这些概念、原理性的东西,才能灵活...我还会介绍各类常见的图表类型,以及图表元素的编辑及使用规则,以及介绍制作动态图表的原理等!
  • Excel制作动态图表

    千次阅读 2016-11-17 18:09:39
    动态图表制作主要用到 1.组合框控件 2.offset公式 3.名称管理器 下面实例讲解如何制作动态图表。 一、首先,选中C2:I3区域,制作sales A的条形图 二、再在开发者工具工具栏插入组合框按钮,设置控件格式...
  • Excel2007图表制作

    2010-09-08 10:36:26
    Excel2007图表制作,内容包括常用图表介绍,快速制图技巧,常用复合图表制作,动态图表制作
  • 主要介绍了基于canvasJS在PHP中制作动态图表,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • 前言 本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。...这篇文章就介绍了 Python 中一种简单的动态图表制作方法。 数据暴增的年代,数
  • Excel2016制作动态图表

    万次阅读 2017-12-04 23:04:57
    效果图制作流程 工具:Excel 2016 制作前,先点击文件–>选项–>自定义功能区–>勾选(主项卡)开发工具选项 流程如下图1—图4: 图1 图2 图3 图4 1、创建原始数据在B2:G7区域建立表格 产品 1月...
  • 动态数据可视化图表制作的5个基本流程:原始数据分析、确定所需图表类型、导入数据,进行初步优化、整体优化和检验成效这五个流程。 1.原始数据分析: 明确动态数据分析并清楚认识到数据的类型、与其他数据之间的...
  • 介绍如何在Excel中制作动态图表 介绍如何在Excel中制作动态图表 介绍如何在Excel中制作动态图表
  • 使用excel制作动态图表或仪表盘-附件资源
  • 如何制作动态图表

    2012-11-14 18:08:16
    假定A1:B1为初始的图表区域,要求,当A1或B1以下出现数据时,右边的图表自动更新 step1: 点中一单元格,“插入”-"名称"-“定义”,定义两个参数x,y,其中: x=OFFSET(Sheet1!$A$2,0,0,COUNTA(Sheet1!$A$2:$A$...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 20,771
精华内容 8,308
关键字:

动态图表如何制作