【问题标题】:Excel: Plotting multiple series in a scatter plotExcel:在散点图中绘制多个系列
【发布时间】:2016-06-04 22:28:57
【问题描述】:

我有几个不同的学生,我想绘制他们的考试成绩随时间变化的图。有多个学生,但每个学生只有几个测试。

Name    Date    Score
Afaf    10/1/2014   2
Afaf    4/15/2015   3
Ahmed   10/8/2015   1
Ahmed   2/16/2016   1
Ahmed   3/5/2016    1
Arie    11/3/2015  -1
Arie    3/23/2016   1

到目前为止,我发现散点图给了我想要的东西:

但是,当我将新系列添加到图表时,我必须手动选择每个学生。我无法让 Excel 将“名称”列识别为分类(即每个名称都是其自己的系列):

这真的很慢,因为数据集中有一百多个学生。有没有更快/更好的方法来做到这一点?我可能可以在 R 中做到这一点,但这适用于不了解 R 并且需要能够在未来复制它的人。

提前感谢您的帮助。

【问题讨论】:

    标签: excel graph spreadsheet scatter-plot


    【解决方案1】:

    因为您没有不同的学生在同一日期参加考试,所以除了他们自己的 Y 系列之外,每个学生都需要自己的 X 系列。因此,我建议在单独的工作表上或在当前电子表格的某些部分上关闭您不使用的您开发一个列表系列用于 platting。

    步骤 1) 将生成唯一名称列表。希望您的学生名单中没有两个 John Smith。如果你是这样,你需要想办法让它们独一无二。我建议你把所有学生的名字放在一个水平行中。有一些公式可以为您做到这一点。还有一个内置的 excel 命令将生成一个删除重复项的列表。 (如果只在列中有效,不用担心,您可以复制并过去转置以水平获取列表。

    第 2 步)将在每个名称之间放置一个空白列。这是必需的,因为每个学生都有自己独特的测试日期列表。

    第 3 步)将在人名下建立一个测试日期列表,并在空白列中建立相应的等级。同样有一些公式可以解决这个问题,例如 LOOKUP、VLOOKUP 和 INDEX MATCH 组合。如果日期不是按时间顺序排列的,您甚至可能需要考虑 AGGREGATE 命令。否则连接点会变得混乱。您使用 AGGREGATE LARGE 或 SMALL 生成属于学生姓名的日期排序列表。

    第 4 步)将每个系列添加到图表中。根据 MS 规范,您显然最多可以拥有 255 个系列。

    如果您按照建议对数据进行了布局,请记录您使用第一个系列制作第一个图表的宏。停止宏,然后去看代码。 fi 你可以看到做了什么,这次记录了相同的过程,在第一个系列之后添加了第二个系列。你应该注意到小的变化。重复此模式,直到覆盖所有学生。

    您应该能够搜索所讨论的概念以找到关于 SO 的答案,这些答案可以根据您的需要进行编辑。

    【讨论】:

    • Exel 在数据集的自动化和自动更新方面有其局限性。如果有学习它们的技能或时间,可以建议使用适当的标准化数据库和简单的数据分析软件,如 R、spagobi、lumify 或 pentaho。取决于要求。使用过多的 VBA 也可以在痛苦的解决方法中自动完成大部分操作。
    • 我赞成这条评论,因为它最终解决了 OP 的担忧。是的,她/他可以学习一套全新的技能,但这有点超出了问题的范围。
    猜你喜欢
    • 1970-01-01
    • 2017-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-16
    相关资源
    最近更新 更多