如何制作一个图表,以图表形式显示条目的频率?


8

我有一个Excel工作簿,它仅以以下方式显示日期(已排序):

11/14/2011 11:53
10/14/2012 11:53
11/23/2012 19:28
12/24/2012 12:27
...
12/1/2013 11:48

我想创建一个折线图,告诉我每个月有多少个条目。我要如何做到这一点?

Answers:


5

如果您要计算一个月中的所有值(不管年份如何),Mike Fitzpatrick的答案将非常有效。如果您希望按年获得每个月的计数表(即能够区分2012年11月和2013年11月),则需要更多详细信息。

  1. 根据现有数据创建一个标准表。
  2. 添加一个名为Year的列,其公式为= Year(A2)。
  3. 添加一个名为Month的列,其中带有forumla = Month(A2)。
  4. 在数据透视表中,将Year和Month用作行标签,将DateTime用作值(仍带有Count)。
  5. 现在,数据透视表将区分不同年份的同一个月。
  6. 最后,在选择“数据透视表”的情况下,插入“柱形图”以创建包含您的每月计数的数据透视图。

通过为原始数据使用标准表,您可以在添加值时更新数据透视表,并更新数据透视表。


+1。更新了我的答案,以根据需要包括按年份分组。
Mike Fitzpatrick

5

假设您的数据是有效的Excel日期时间,请为您的范围命名(例如“ Datetime”),然后创建数据透视表。

使用Datetime(或任何您称呼的日期)作为行标签值。确保“值”功能是“计数”,而不是“求和”。

最后,将您的行标签按月分组,也可以按年分组。


1
在Excel 2010中,很难看到该选项,以至于我不得不三遍检查不同的位置,下拉列表以及在“选项”功能区中找到它之前没有执行的操作,并且只有在单击实际表列时才激活。
Alexandre Rafalovitch 2014年

右键单击要分组的日期,弹出菜单中的一项是“分组”。
乔恩·

1

我注意到,在您的样本数据中,您实际上具有相对较大的时间跨度,且具有不规则的时间间隔。虽然其他答案指出了如何单独在Excel中制作图表,但在此我提出了另一种解决方案,可以制作交互式折线图来解决我提到的问题。下图显示了我根据您的描述制作的示例。

在此处输入图片说明

我使用Funfun Excel加载项制作了此图表。基本上,此加载项使您可以直接在Excel中使用JavaScript,因此可以利用HighCharts.js或D3.js之类的库来制作交互式图表。在此特定示例中,我使用了HighCharts.js。在此图表中,您可以使用鼠标放大特定时间范围以查看明细编号。如果您有多年的日志,这将非常有用。

返回您的数据。在制作此图表之前,您确实需要计算每个月的频率。这可以通过用JavaScript编写一个小函数来完成。这是一些示例代码。

var frequencyPerMonth = new Object();

  var monthLast = 1;
  var yearLast = 1970;
  for(var i=0;i<data.length;i++){
    var monthThis = parseInt(data[i][0].split('/')[0]-1);
    var yearThis = parseInt(data[i][0].split('/')[2]);

    if(monthThis == monthLast && yearThis == yearLast){
        frequencyPerMonth[data[i][0].split('/')[2]+monthThis.toString()] += 1;
    }
    else{
        frequencyPerMonth[data[i][0].split('/')[2]+monthThis.toString()] = 1;
    }
    monthLast = monthThis;
    yearLast = yearThis;
  }

Funfun还具有一个在线编辑器,您可以在其中浏览JavaScript代码和结果。您可以在下面的链接中查看如何制作示例图表的详细信息。

https://www.funfun.io/1/#/edit/5a4e0d461010eb73fe125c4e

对在线编辑器中获得的结果满意之后,您可以使用上面的URL轻松地将结果加载到Excel中。但是当然,首先,您需要通过Insert-Office Add-ins将Funfun加载项添加到Excel中。以下是一些屏幕截图,显示了如何将示例加载到Excel中。

在此处输入图片说明

在此处输入图片说明

披露:我是Funfun的开发人员

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.