Code Monkey home page Code Monkey logo

infovis-ucas's Introduction

infovis-ucas

Repository Programming Assignments for Information Visualization Course on University of Chinese Academy of Sciences.

Introduction

In order to utilize GitHub Pages services, this is almost a static website repository for infovis-ucas course assigments, you can access pages by url with https://iscas-vis.github.io/infovis-ucas/views/CUSTOMIZE_URL, among which CUSTOMIZE_URL should be an existing file path in views folder, such as TA/d3-tutorial-bar-chart.html. However, you can also set up a http server to host this repo locally if some content in your page needs to connect with local server, but it doesn't work in Github Pages. A light http server is recommended and will be introduced in Install chapter.

Before Install

You can access the pages via https://iscas-vis.github.io/infovis-ucas/ directly, and you need to confirm the Node environment before you start the Installation steps. Some simple install commands to get node for some platforms shows below:

# OSX
curl "https://nodejs.org/dist/latest/node-${VERSION:-$(wget -qO- https://nodejs.org/dist/latest/ | sed -nE 's|.*>node-(.*)\.pkg</a>.*|\1|p')}.pkg" > "$HOME/Downloads/node-latest.pkg" && sudo installer -store -pkg "$HOME/Downloads/node-latest.pkg" -target "/"

# Arch Linux
pacman -S nodejs npm

# Debian and Ubuntu based Linux distributions
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs
# Optional: install build tools
sudo apt-get install -y build-essential

You can get the complete guidance from here. You can also use recommended Node version management such as nvm or n to set up the node environment. Once you complete it, you can install immediately.

Install

Fork your own copy of ISCAS-VIS/infovis-ucas to your account, and git clone it from github (suppose your name is ISCAS-VIS):

git clone [email protected]:ISCAS-VIS/infovis-ucas.git

Enter the folder and install dependencies:

npm install

After that, you can start the server via command:

npm start

The command start http-server locally, now you can visit http://localhost:8080 to view your server, the default page should be index.html in the root path, you can change the server path by following command instead of npm start:

http-server [path] [options]

[path] defaults to ./public if the folder exists, and ./ otherwise. However, you need to confirm that you already have http-server installed globally before run the command above, the global install command is:

npm install http-server -g

After include your own codes into the repository, you can open a pull request to develop branch. You can open issues to discuss about your ideas about the repository with us, and contribute your visualization resources to our WIKI.

Notifications

  • Public libraries are stored in /public folder, such as jQuery, Bootstrap and Vue, you can directly include them in your html file or use their offical CDN paths, in order to control the total repository size.
  • Please follow Github Pages Basics to organize your codes, in order to make it run nicely via github pages service.

License

Apache-2.0

infovis-ucas's People

Contributors

chuyiyao avatar hijiangtao avatar hmeanshi avatar tonypod avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

infovis-ucas's Issues

有关管理自己所在队伍与项目代码的讨论

我觉的助教可以创建一个organization,把所有人拉进来。

每个组建一个repertory,小组内fork自己组的repertory

这样能够看到小组内每个人对项目的贡献度,也方便每个组对自己项目的管理:有的组可能里面涉及其他框架,比如web应用等。

也不用每次提交都要向master pull request,以及解决相关的conflicts

GIT 使用指南

当我们在 github 上 fork 出一个项目后,如果原有的项目更新了,怎样保持我们 fork 出来的项目和原有项目保持同步,并提交我们的代码更新呢?即怎样保持fork出的项目和上游项目保持更新,怎样创建 pull request?

步骤

  • 在 Fork 的代码库中添加上游代码库的 remote 源,该操作只需操作一次即可。如: 其中# upstream 表示上游代码库名, 可以任意。
git remote add upstream [email protected]:ISCAS-VIS/infovis-ucas.git
  • 将本地的修改提交 commit
  • 在每次 Pull Request 前做如下操作,即可实现和上游版本库的同步。
    1. git remote update upstream
    2. git rebase upstream/{branch name}

需要注意的是在操作第二步之前,一定要 checkout 到 {branch name} 所指定的 branch ,如:

git checkout develop
  • Push 代码到 Github

Notice of UCAS-16-Fall Course Credits

Credits 组成概况

课程评分由课程 wiki 公布的几项内容组成,正常组成部分总分 100 分,额外加分 10 分封顶,内容如下引用部分,也可以在课程 wiki 上查看Credits

  • Class participation: 15%
  • Mid-term: 40%
    • VIS project checkpoint I: 10%
    • VIS project checkpoint II: 10%
    • VIS project poster presentation: 20%
  • VIS project presentation: 45%
  • BONUS: 10%
    • Ask questions at class: 1 grade each, 5 grades at maximum
    • Contribute InfoVis resources to our course wiki: 1 grade for each topic, 5 grades at maximum (in case accepted)
  • Policy
    • Late: 10% deduction each day late (assignment, final project)
    • Duplication: 50% score for each people/team (or divided by #Dup)
    • Open source: open source usage encouraged, MUST cite the source of the code/app/data and explain which part is new

Final Project 验收材料清单

  1. 最后一节课汇报的PPT ,提交到协作小组文件夹
  2. 课程wiki 里各自小组页面里对项目的description,在wiki 填写 (checkpoint 1& 2 部分大家之前都填过了,只需要最后把剩下部分填好即可)
  3. 一个可在线访问你们项目的 url ,附在wiki description 内容中(可以使用课程github repo 也可以使用自有服务进行部署,课程github repo 是 给大家提供的default 选项);有同学反应小组的工作成果难以用 web 形式进行发布(通过 url 访问浏览),这部分同学可以最后一节课带着自己电脑现场演示下你们的成果,以此可以替换在 wiki 中添加在线访问的 url. 二选一,大家根据自己实际情况选择

其余材料自愿添加

Final Project 评分情况说明

image

Final Project 评分由三部分组成:小组互评(30%),老师评分(40%),和助教评分(30%),加权后总分乘以 4.5 为各小组最后得分,小组内成员得分一致、不差异化评分。

最后一节课上,各小组将拥有一张如上的打分表,在答辩过程中,小组需要填写本小组给其他各组的打分情况(总分10分,最小精度为 0.1,如 9.1 )

加分补录机会

课程出勤、回答问题加分记录、Checkpoint I & II、Poster Session 的分数情况均有记录,其中加分记录将在最后一堂课打印出纸质版供大家核对,提供一次补录机会(如果统计上有差入)。

注意

  1. 课程出勤得分说明:全勤或缺1次(提前向老师发送过邮件申请请假的情况按照正常出勤统计)获得总分 15 分,缺 2-3 次扣 5 分,4-5次 扣 10 分,6次以上扣15分
  2. 作业晚交扣分说明:各阶段 checkpoint 材料、poster 电子版材料、final project 材料若在课程 wiki 规定的截止时间之后提交,相应组内该环节得分为:已获得的该环节得分 - 该环节总分的 10%,例如: poster 占分为 20%×100=20分,假设 X 组 poster 得分为17.5分,但电子版材料出现晚交情况,其得分实际为 17.5-2=15.7分,四舍五入为16分
  3. 加分说明:课程总分100分以外,最多允许额外加分 10 分。其中课程提问最多加分 5 分(1分/次),给课程 wiki 或 课程 github 项目贡献资源(被接受)最多加分 5 分(1分/次)。
  4. 时间评判说明:poster 电子版材料以 助教邮箱 收到的邮件时间为准,其余提交材料以 课程协作小组 内大家相应材料的首次上传时间为准

Q&A about UCAS'16 Fall Course

关于课程组队、项目展示和Github页面使用的相关问题可以提问到本议题下,建议加粗问题标题,正常字体显示文字描述,建议格式如下:

问题标题

问题详细描述,可以添加相关附件等材料辅助描述。

项目使用指南

大家注意查看课程wiki有关checkpoint I的提交材料清单以及时间节点,请严格按照课程wiki上的要求来执行。

另外,本次提交checkpoint I的材料里请大家在页面上注明小组成员的工作分工。请大家注意并相互提醒下课程wiki上规定的期限,以免影响到大家的课程成绩的评定啦

大家需要在 VIS PROJECT 页面各自队伍下方,放上各自checkpoint I的页面链接。

考虑到有同学更喜欢使用github工作流,页面新建可以参考课程 VIS PROJECT 页面上方添加的模板链接(课程wiki采用与维基百科一致的语法,请注意)新建一个网页填写内容,对markdown或者github熟悉的同学也可以fork 课程github项目,然后在/views/YourGroupName/(YourGroupName文件夹需要根据自己队伍名新建)文件夹里放上自己小组的checkpoint I说明(命名VIS-Project.md),完成后在自己项目中保存,并向 原项目 master分支提交pull request.

采用课程网站上直接新建页面填写checkpoint I内容的同学,有不明白的操作可以到网站Q&A页面留言提问;对于github相关操作有不懂的或者感兴趣的同学可以到github项目主页 issue里新建issue或者在现有issue中讨论。

我在课程wiki(http://211.147.15.14/UCAS_16_Fall/index.php/VIS_Project )上更新了两份模板,wiki(使用语法与维基百科一致)和github(markdown语法)版本,供大家参考(二选一,推荐使用github版,因为大家最后工程的代码也需要放在github项目里面);大家在创建完页面后需要把页面链接放在小组名称下方,可以参考我写的,相关内容在模板链接中都有说明。

大家在课程结束的时候相关工程代码需要上传到github的views文件夹中。例如:我们队叫BUG,那么我需要在views文件夹中创建一个BUG文件夹,有关我们组的内容全部放在该文件夹中。大家可以现在创建好,之后我也会再次提醒大家。

大家在科研在线协作小组中上传的checkpoint I的演示文稿文件可以点击公开分享,会生成一个url,将其链接在你的 VIS PROJECT 页面即可,无需重复上传内容。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.