【问题标题】:Excel - VBA - Chart how to use array for Y axisExcel - VBA - 图表如何将数组用于Y轴
【发布时间】:2016-06-07 08:02:58
【问题描述】:

我还在学习编码,遇到了一个新问题。 总而言之,我有四列: 第一个是日期,第二个是类别,第三个是名称,第四个是具体情况。

我必须编写一个程序,以便数据自动在散点图中自行排序,以便: - y 轴按类别排序(我遇到了问题,因为它是文本,然后我的所有点都在水平轴上排序) - 每个点都被标记为:上面是名称,下面是特性 - 日期在 x 轴上(为此,我发现的唯一方法是逐行添加数据,而不是选择我记录在宏中的所有列。我可以保留那部分,但我试图找到一种方法,并认为如果你也能对此有所了解,我会这样做)

我的主要问题是找到一种方法来告诉我的宏按类别对 y 轴进行排序

这是数据的样子(除了大约 200 行)

我的目标是制作一个图表,将点放在其类别和日期的交点处。 (然后宏必须将“名称”数据放在每个对应点上方,并将“Characteristcis”数据放在它们下方。)如下所示:

您介意帮我解决一下吗?

非常感谢您的帮助(如果有任何英文错误再次抱歉)

【问题讨论】:

  • 散点图的轴都是数字的。如果您想在一个轴上绘制分类数据,那么它不是散点图 - 尽管您可能需要创建一些虚拟数字数据,以便您可以使用 Excel 中的散点图伪造您想要的样子。 (我假设这是 Excel?如果是这样,您应该这样标记它。)您能否向我们展示数据示例以及您希望图表看起来像什么?
  • 是的,它是 Excel,抱歉忘记添加了。我会试着把数据和目标的样子放一张图片
  • 是否有可能的类别的固定列表,或者它们是否与一个数据集完全不同?是否会有两个具有相同日期和类别的数据点?如果有,您希望它是什么样的?
  • 没有固定的可能类别列表。根据所涉及的主题,它可能会完全不同。可能有两个数据点具有相同的日期和类别,在这种情况下,我认为我只有一个点(或者它们可能重叠,没关系),但名称和特征必须区分和可读。到目前为止,我已经编写了一个宏,将系列逐一添加到图表中,并用数字替换类别(每个类别都有一个),这样我就可以尝试视觉化,但我不知道这是否是个好主意或者从那里去哪里
  • 添加与类别对应的虚拟数字列将起作用,至少它允许您使用 Excel 散点图。我不确定你将如何让图表显示你想要的所有文本。这个免费的插件可能会有所帮助,如果你可以打开它来检查它的 VBA 代码:appspro.com/Utilities/ChartLabeler.htm

标签: arrays excel vba charts axis


【解决方案1】:

我想我找到了解决问题的方法。 实际上有几种方法可以到达那里。

如果你只有两个类别,那么你可以选择 y 轴并像这样修改它: 您选择“数字”并在类型框中以任何数字格式输入类似这样的内容

[=1]“第 1 类”;[=2]“第 2 类”

然后将其添加到个性化格式并选择它。这将显示两个类别而不是数字。

但是,如果您有两个以上的类别,那就有点棘手了。 正如我第一次尝试的那样,您必须创建一个充满数字的虚拟列,然后将其替换。其余的在那里解释得更好:http://peltiertech.com/Excel/Charts/Y_CategoryAxis.html

希望对你有帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-07
    • 2021-01-18
    • 1970-01-01
    • 1970-01-01
    • 2012-09-14
    相关资源
    最近更新 更多