freeCodeCamp/curriculum/challenges/chinese/04-data-visualization/data-visualization-projects/visualize-data-with-a-scatt...

4.7 KiB
Raw Blame History

id title isRequired challengeType videoUrl localeTitle
bd7178d8c242eddfaeb5bd13 Visualize Data with a Scatterplot Graph true 3 使用散点图可视化数据

Description

目标:构建一个功能类似于此的CodePen.io应用程序: https //codepen.io/freeCodeCamp/full/bgpXyK 。完成以下用户故事并通过所有测试。给它你自己的个人风格。您可以使用HTMLJavaScriptCSS和基于D3 svg的可视化库。测试需要使用D3轴属性生成轴该属性会自动生成沿轴的刻度。通过D3测试需要这些刻度因为它们的位置用于确定绘制元素的对齐方式。有关生成轴的信息 访问https://github.com/d3/d3/blob/master/API.md#axes-d3-axis 。在每次测试时查询必需非虚拟DOM元素。如果您使用前端框架例如Vue则测试结果可能对动态内容不准确。我们希望最终能够容纳它们但D3项目目前不支持这些框架。 用户故事1我可以看到一个具有相应id="title"的title元素。 用户故事2我可以看到一个x轴其对应的id="x-axis"用户故事3我可以看到一个y轴它具有相应的id="y-axis"用户故事4我可以看到点,每个点都有一个dot ,表示正在绘制的数据。 用户故事5每个点应具有包含其对应的x和y值的属性data-xvaluedata-yvalue用户故事6每个点的data-xvaluedata-yvalue应该在实际数据的范围内,并且应该是正确的数据格式。对于data-xvalue 可以接受整数全年或Date对象进行测试评估。对于data-yvalue 分钟请使用Date对象。 用户故事7 data-xvalue及其对应的点应与x轴上的对应点/值对齐。 用户故事8 data-yvalue及其对应的点应与y轴上的对应点/值对齐。 用户故事9我可以在y轴上看到多个刻度标签其中%M:%S时间格式。 用户故事10我可以在x轴上看到显示年份的多个刻度标签。 用户故事11我可以看到x轴标签的范围在实际的x轴数据范围内。 用户故事12我可以看到y轴标签的范围在实际y轴数据的范围内。 用户故事13我可以看到包含id="legend"描述性文本的id="legend"用户故事14我可以将鼠标悬停在一个区域上,并查看带有相应id="tooltip" ,其中显示有关该区域的更多信息。 用户故事15我的工具提示应该有一个data-year属性,该属性对应于活动区域的data-xvalue 。以下是完成此项目所需的数据集: https://raw.githubusercontent.com/freeCodeCamp/ProjectReferenceData/master/cyclist-data.json //raw.githubusercontent.com/freeCodeCamp/ProjectReferenceData/master/cyclist-data.json您可以通过分叉此CodePen笔来构建项目。或者您可以使用此CDN链接在您喜欢的任何环境中运行测试 https://cdn.freecodecamp.org/testable-projects-fcc/v1/bundle.js https://cdn.freecodecamp.org/testable-projects-fcc/v1/bundle.js完成后将URL提交给您的工作通过所有测试的项目。如果卡住请记住使用Read-Search-Ask方法。

Instructions

Tests

tests: []

Challenge Seed

Solution

// solution required