Excel:使用 y=1 的时间范围绘制方波图,而 y=0 则缺少时间范围

Excel:使用 y=1 的时间范围绘制方波图,而 y=0 则缺少时间范围

抱歉,问题名称不正确。

我有一组 CSV 数据,其中包含时间范围(自纪元以来的纳秒数),如下所示

StartTimestamp,EndTimestamp
284473439207159,284473441207159
284473458747908,284473460285908
284473480805406,284473481909406
284473502295963,284473504295963
284473524525589,284473526079589
284473546781808,284473547889808

这些代表信号开启的时间。

我想创建一个方波图,其中 X 是时间(从第一次开始到最后一次结束),如果 X 在数据集的某个范围内,则为 f(X)={1,否则为 0}

例如:给定集合

0,1
3,5
9,10

我想看看这个

在此处输入图片描述

有什么建议吗?如果不生成 0 值,我就无法解决这个问题。

答案1

首先,您必须将起始数字和终止数字拆分为单独的值。您可以使用“文本分列”功能或公式来完成此操作。

以下是使用公式的方法。我假设您的逗号分隔值位于 Column 中 A,从 Cell 开始 A2。(并且我假设您已经发现将这些值格式化为 Text 会有所帮助,以防止 Excel 认为每个条目都是一个 30 位数字。)

  • 在单元格中 B2,输入=LEFT(A2, FIND(",", A2)-1)+0
  • 在单元格中 C2,输入=RIGHT(A2, LEN(A2)-FIND(",", A2))+0

+0最后的将返回的文本值转换LEFT()RIGHT()数字。)

我想你已经知道,创建方波图的方法是为每个 X 转换值设置两个数据点。我们可以用公式创建它们。你需要一个工作区 — 例如 Columns  AB:AC。(如果你愿意,你可以把它放在其他地方。)

  • 在单元格中 AB2,输入=INDEX(B:C, (ROW()+3)/4+1, MOD(INT((ROW()+3)/2),2)+1)
  • 在单元格中 AC2,输入=MOD(INT(ROW()/2), 2)

公式AB从列中获取 X 值 B:C,并在它们之间交替。AC公式生成与之配合的零和一。选择单元格 AB2并向 AC2下拖动/填充。现在您有适合 XY 散点图的数据。

您的虚拟/测试数据:

您的真实(不真实?)数据:

答案2

不幸的是,Excel 无法根据您拥有的格式的数据创建该图表,需要进行转换。

您可以使用两个公式来完成:

  • x 坐标:=INDEX($A$2:$B$95,INT(ROW()/4)+1,INT(MOD(ROW(),4))/2+1)
  • y坐标:=INT(MOD(ROW()-1,4)/2)

然后只需在数据上插入一个 xy 图表

在此处输入图片描述

在此处输入图片描述

相关内容