1

我正在尝试使用条形图绘制以下信息:

Drift       density Time    
0,23048397  12:00   15:00
0,053393365 15:00   18:00
0,433287679 16:00   19:00
0,129268147 17:00   20:00
0,656067688 18:00   21:00
0,356133746 19:00   22:00
0,083351634 20:00   23:00
0,167938106 21:00   00:00

第一列上的值 = Y 轴
所以我希望 12:00 - 15:00 是 X 轴上的第一个值,绘制在 Y 轴值 0,23048397 上(作为条形图)。

问题是:我不希望下一个 Y 轴值 0,053393365(作为条形)代表 15:00 - 18:00。为什么?因为时间“15:00”会显示两次。

换句话说,我只将 X 轴管理为:

 12:00-15.00 ... 15:00-18:00....18:00-21:00

如何使 x 轴 3 小时间隔中的两个共享一个公共小时?
12:00-15:00-18:00-21:00(并且相关的 Y 轴值并排排列?)

我希望描述不要太复杂。会有很大帮助的!

4

2 回答 2

0
  • 我认为没有一种方法可以仅使用 Excel 以便携的方式(即不创建包含所有名称的框,然后调整其位置和大小)来完全满足您的要求。您可以通过将连字符附加到第一次列来获得类似的效果(请参见屏幕截图 - 使用 Gnumeric 制作,但在 Excel 中应该看起来相似)。此解决方案不可扩展,这意味着您必须调整绘图的宽度和/或标签的字体以将标签之间的距离减小到最小。

  • 如果这是一次性任务,我会在矢量图像编辑器中更正标签。

  • 如果您必须定期甚至大量制作此类绘图,我会使用任何能够生成 SVG 文件的绘图工具/库,然后通过一个小脚本调整标签(甚至将它们集成到一个小程序或使用管道)。

  • 可能是,有一个现成的R'ish 解决方案,但我不知道它。

用 Gnumeric 制作,但在 Excel 中应该看起来相似

于 2013-10-06T22:00:45.593 回答
0

您可以使用大量公式来管理它,但它们将是一个难以维护的问题。可能有更简单的方法。

时间总是整数小时吗?如果是这样,请更改您的数据输入,以便您每小时有一个值,如果它们从一小时到下一小时没有变化,则重复这些值。

如果是这样,标签也不会太麻烦。描述比实际做需要更长的时间。

从类似于以下的数据范围开始。你的时间加上一个额外的小时列在第一列,你的 Y 值列在第二列,一堆零列在第三列。

便于绘制图表的数据

选择粗边框中的范围并插入柱形图(下图 1)。对间隙宽度使用较小的值(此处为 10%),以便条形图几乎填满每小时槽。

选择黄色阴影小时,然后在选择黄色阴影零值的同时按住 Ctrl。这会选择两个范围。复制,然后选择图表,然后使用选择性粘贴(主页选项卡上的粘贴下拉菜单)将数据添加为新系列(下图 2)。由于零值,它不会显示,但会将条推到一侧。

选择原始条形图,按向上箭头键选择零值条形图,单击空格键右侧的 alt 和 ctrl 之间的按钮弹出上下文菜单,然后选择更改系列图表类型。选择一种线型。在 Excel 2013 中,您可以同时将线系列移动到辅助轴。在其他版本中,格式化线系列,使其位于辅助轴上。见图表 3。

说明图 1-3

现在使用 2013 中的加号图标或图表工具 > 布局选项卡将辅助水平轴添加到图表(图表 4)。

格式化辅助水平轴,使其不使用线,然后在轴选项下,选择刻度线上的轴交叉(图表 5)。这会将第一次和最后一次标签移动到图表的外边缘,因此这些标签定义了条形之间的时间,而不是在条形下方居中。

格式化主水平轴,使其不使用线。在 Axis Options > Labels 下,选择 None,以隐藏原始小时标签(图 6)。

说明图 4-6

格式化第二水平轴,在标签下,选择低选项,将它们移动到条形下方(图 7)。

最后,格式化添加的线条系列,使其不使用线条和标记(图 8)。您本可以立即执行此操作,但我将它们保留在其中,以便您可以看到我在做什么。

说明图 7-8

于 2013-10-07T18:28:28.243 回答