SlideShare a Scribd company logo
1 of 34
d3.js 외부 데이터 불러오기 & 막대그래프
2015.4.4
Songyi Lim
오늘의 수업
실습이론
• D3.js의 데이터 종류
• CSV 형식
• JSON 형식
• 자바스크립트 ‘변수’ 개념
• 자바스크립트 ‘함수’ 개념
• D3.js의 데이터 매칭 원리
• 데이터 문장 만들기
• 외부 데이터 연동
• 막대그래프 그리기
• bl.ocks.org 만들기
Songyi Lim
D3.js에서 활용할 수 있는 데이터들
내부 외부
단순배열 데이터 TSV
CSV
JSON
HTML
XML
TEXT
Songyi Lim
종류 설명
TSV 데이터가 탭으로 구분된 형식. 헤더있음.
CSV 반점으로 구분한 텍스트. 헤더있음.
JSON JavaScript Object Notation’의 약자. XML과 비교해 간단하고 데이터 용량도 적음. 헤더없음.
HTML 브라우저로 표시했을 때 데이터를 보기 좋게 표시해줌. 다른 데이터와 달리 레이아웃이 있다.
XML 태그를 이용해서 데이터 표현. 범용적인 데이터 포맷. SVG도 XML의 종류 중 하나.
TEXT 순수한 문자로만 구성된 데이터 파일.
D3.js 외부 데이터 종류별 특징 요약
Songyi Lim
CSV
반점으로 구분한 텍스트
d3.csv()
D3.js 데이터 종류 - CSV
item1, item2, item3,
120, 60, 300,
60, 50, 80,
300, 30, 90,
80, 10, 150,
헤더
• 그래프 요소에 연동할 때 속성 이름으로 다뤄짐.
• CSV 형식에 헤더가 없으면 별도 처리가 필요하다
• D3.js에서는 첫 줄이 헤더라는 것을 전제
Songyi Lim
• JavaScript Object Notation. 자바스크립트 문법을 바탕으로 하는 자료형식
• TSV나 CSV와 달리 헤더는 없다.
• 여러개의 데이터는 []로 감싼다
• 데이터에 레이블을 붙일 때는 { } 사이에 ‘키 이름 : 값’의 쌍을 필요한 데이터 개수만큼 반점으로 구분.
• 계층구조를 가진 데이터에서 많이 사용.
[	
  
{“item”	
  :	
  “상품A”,	
  “sales”	
  :	
  [150,90,300]},	
  
{“item”	
  :	
  “상품B”,	
  “sales”	
  :	
  [70,920,320]},	
  
{“item”	
  :	
  “상품C”,	
  “sales”	
  :	
  [20,40,360]},	
  
{“item”	
  :	
  “상품D”,	
  “sales”	
  :	
  [50,210,200]},	
  
{“item”	
  :	
  “상품E”,	
  “sales”	
  :	
  [400,610,100]},	
  
]
d3.json()
ex)
D3.js 데이터 종류 - json
JSON
Songyi Lim
[ 실습 ] D3.js
실
 습
Songyi Lim
[ 실습 ] 실습 데이터 설명
서울시 구별 방범용 CCTV 현황
출처 : 공공데이터포털, http://goo.gl/gB9NhA
Songyi Lim
[ 실습 ] html 파일 준비하기
Songyi Lim
[ 실습 ] 자바스크립트 기본 개념 : 변수 선언하기
var	
  name	
  =	
  3	
  ;
선언 키워드
변수명
변수값
대입연산자
‘변수’
값을 저장하기 위한 공간. 각 변수는 하나의 값을 갖는다.
Songyi Lim
[ 실습 ] D3.js 데이터 파일 연동하기
파일 경로
파일을 불러올 때
오류가 날 경우
데이터가 전달된 부분
Songyi Lim
[ 실습 ] D3.js 데이터 파일 연동하기
Songyi Lim
[ 실습 ] 자바스크립트 기본 개념 : 함수
function	
  name()	
  {	
  
console.log(data);	
  
};
함수 키워드
코드
함수 이름
‘함수’
특정한 작업을 수행하기 위해 필요한 일련의 구문
Songyi Lim
[ 실습 ] SVG 그리기
바탕 설정
그래픽 요소에
데이터 연동
Songyi Lim
[ 실습 ] SVG 그리기
모든 문서 요소 선택. 하지만 아직 생성되지 않았기 때문에
빈 공간과 동일.
데이터 값을 불러옴
문서요소와 데이터 값을 연동시킴.
만약 요소가 없다면 정의되지 않은 요소를 생성함.
문서 요소의 정의를 추가함.
Songyi Lim
[ 실습 ] D3.js 데이터 매칭 원리
body 선택
svg 추가
.data( )
데이터 불러옴
빈 그래픽 요소
빈 그래픽 요소
빈 그래픽 요소
빈 그래픽 요소
빈 그래픽 요소
데이터값
데이터값
데이터값
데이터값
데이터값
요소정의
요소정의
요소정의
요소정의
요소정의
.enter( )
데이터와 문서요소연동
.append( )
문서요소 정의
Songyi Lim
[ 실습 ] D3.js - 데이터 문장 만들기
Songyi Lim
[ 실습 ] D3.js - 데이터 문장 만들기
Songyi Lim
[ 실습 ] D3.js 막대그래프 그리기 - 바탕 설정하기
Songyi Lim
[ 실습 ] D3.js 막대그래프 그리기 - 기본 설정
Songyi Lim
[ 실습 ] D3.js 막대그래프 그리기 - x좌표 설정
Songyi Lim
[ 실습 ] D3.js 막대그래프 그리기 - 높이 설정
Songyi Lim
[ 실습 ] D3.js 막대그래프 그리기 - y좌표 설정
Songyi Lim
[ 실습 ] D3.js 막대그래프 그리기 - y좌표 설정
보통 척도를 활용해
크기에 맞춰 데이터 비율을 자동 설정하지만
오늘 수업에서는
임의로 값을 나눠
비율을 맞춥니다.
Songyi Lim
[ 실습 ] D3.js 막대그래프 그리기 - 색상 바꾸기
Songyi Lim
[ 실습 ] D3.js 막대그래프 그리기 - 데이터값 붙이기
Songyi Lim
[ 실습 ] D3.js 막대그래프 그리기 - 데이터값 꾸미기
Songyi Lim
[ 실습 ] 팁 - bl.ocks.org 만들기
Songyi Lim
[ 실습 ] 팁 - bl.ocks.org 만들기
Songyi Lim
[ 실습 ] 팁 - bl.ocks.org 만들기
Songyi Lim
[ 실습 ] 팁 - bl.ocks.org 만들기
Songyi Lim
[ 실습 ] 팁 - bl.ocks.org 만들기
Songyi Lim
[ 실습 ] 팁 - bl.ocks.org 만들기
bl.ocks.org

More Related Content

Viewers also liked

[week16] D3.js (Scale & axis)
[week16] D3.js (Scale & axis)[week16] D3.js (Scale & axis)
[week16] D3.js (Scale & axis)neuroassociates
 
꿈꾸는 데이터 디자이너 1기를 끝내며
꿈꾸는 데이터 디자이너 1기를 끝내며꿈꾸는 데이터 디자이너 1기를 끝내며
꿈꾸는 데이터 디자이너 1기를 끝내며neuroassociates
 
Raphael.js로 SVG 차트 만들기
Raphael.js로 SVG 차트 만들기Raphael.js로 SVG 차트 만들기
Raphael.js로 SVG 차트 만들기Ohgyun Ahn
 
[week16] D3.js_Transition
[week16] D3.js_Transition[week16] D3.js_Transition
[week16] D3.js_Transitionneuroassociates
 
[Week15] D3.js_Scatter_Chart
[Week15] D3.js_Scatter_Chart[Week15] D3.js_Scatter_Chart
[Week15] D3.js_Scatter_Chartneuroassociates
 
[Week3] clean & correct data with OpenRefine
[Week3] clean & correct data with OpenRefine[Week3] clean & correct data with OpenRefine
[Week3] clean & correct data with OpenRefineneuroassociates
 
[week4] Cleaning data with openrefine2
[week4] Cleaning data with openrefine2[week4] Cleaning data with openrefine2
[week4] Cleaning data with openrefine2neuroassociates
 
[Week1] 데이터의 접근과 법률
[Week1] 데이터의 접근과 법률 [Week1] 데이터의 접근과 법률
[Week1] 데이터의 접근과 법률 neuroassociates
 
[week14] Getting started with D3.js
[week14] Getting started with D3.js[week14] Getting started with D3.js
[week14] Getting started with D3.jsneuroassociates
 
[Week13] D3.js_Bar Chart
[Week13] D3.js_Bar Chart[Week13] D3.js_Bar Chart
[Week13] D3.js_Bar Chartneuroassociates
 
문디 14주차 발제 scatter plot
문디 14주차 발제 scatter plot문디 14주차 발제 scatter plot
문디 14주차 발제 scatter plotMin Jeong Cho
 
꿈꾸는 데이터 디자이너 시즌2 교육설명회
꿈꾸는 데이터 디자이너 시즌2 교육설명회꿈꾸는 데이터 디자이너 시즌2 교육설명회
꿈꾸는 데이터 디자이너 시즌2 교육설명회neuroassociates
 
『풀스택 개발자를 위한 MEAN 스택 입문』 - 미리보기
『풀스택 개발자를 위한 MEAN 스택 입문』 - 미리보기『풀스택 개발자를 위한 MEAN 스택 입문』 - 미리보기
『풀스택 개발자를 위한 MEAN 스택 입문』 - 미리보기복연 이
 
Social Innovation Spark
Social Innovation Spark Social Innovation Spark
Social Innovation Spark Spark
 

Viewers also liked (20)

[week16] D3.js (Scale & axis)
[week16] D3.js (Scale & axis)[week16] D3.js (Scale & axis)
[week16] D3.js (Scale & axis)
 
꿈꾸는 데이터 디자이너 1기를 끝내며
꿈꾸는 데이터 디자이너 1기를 끝내며꿈꾸는 데이터 디자이너 1기를 끝내며
꿈꾸는 데이터 디자이너 1기를 끝내며
 
Raphael.js로 SVG 차트 만들기
Raphael.js로 SVG 차트 만들기Raphael.js로 SVG 차트 만들기
Raphael.js로 SVG 차트 만들기
 
[week16] D3.js_Transition
[week16] D3.js_Transition[week16] D3.js_Transition
[week16] D3.js_Transition
 
[Week12] D3.js_Basic2
[Week12] D3.js_Basic2[Week12] D3.js_Basic2
[Week12] D3.js_Basic2
 
[Week15] D3.js_Scatter_Chart
[Week15] D3.js_Scatter_Chart[Week15] D3.js_Scatter_Chart
[Week15] D3.js_Scatter_Chart
 
[Week20] D3.js_Mapping
[Week20] D3.js_Mapping[Week20] D3.js_Mapping
[Week20] D3.js_Mapping
 
[Week3] clean & correct data with OpenRefine
[Week3] clean & correct data with OpenRefine[Week3] clean & correct data with OpenRefine
[Week3] clean & correct data with OpenRefine
 
[week4] Cleaning data with openrefine2
[week4] Cleaning data with openrefine2[week4] Cleaning data with openrefine2
[week4] Cleaning data with openrefine2
 
[Week1] 데이터의 접근과 법률
[Week1] 데이터의 접근과 법률 [Week1] 데이터의 접근과 법률
[Week1] 데이터의 접근과 법률
 
[week12] D3.js_Basic
[week12] D3.js_Basic[week12] D3.js_Basic
[week12] D3.js_Basic
 
[Week10] R graphics
[Week10] R graphics[Week10] R graphics
[Week10] R graphics
 
[week14] Getting started with D3.js
[week14] Getting started with D3.js[week14] Getting started with D3.js
[week14] Getting started with D3.js
 
Drawing with data
Drawing with dataDrawing with data
Drawing with data
 
D3.js
D3.jsD3.js
D3.js
 
[Week13] D3.js_Bar Chart
[Week13] D3.js_Bar Chart[Week13] D3.js_Bar Chart
[Week13] D3.js_Bar Chart
 
문디 14주차 발제 scatter plot
문디 14주차 발제 scatter plot문디 14주차 발제 scatter plot
문디 14주차 발제 scatter plot
 
꿈꾸는 데이터 디자이너 시즌2 교육설명회
꿈꾸는 데이터 디자이너 시즌2 교육설명회꿈꾸는 데이터 디자이너 시즌2 교육설명회
꿈꾸는 데이터 디자이너 시즌2 교육설명회
 
『풀스택 개발자를 위한 MEAN 스택 입문』 - 미리보기
『풀스택 개발자를 위한 MEAN 스택 입문』 - 미리보기『풀스택 개발자를 위한 MEAN 스택 입문』 - 미리보기
『풀스택 개발자를 위한 MEAN 스택 입문』 - 미리보기
 
Social Innovation Spark
Social Innovation Spark Social Innovation Spark
Social Innovation Spark
 

Similar to 꿈데디 D3.js강의 2주차

Java script 강의자료_ed13
Java script 강의자료_ed13Java script 강의자료_ed13
Java script 강의자료_ed13hungrok
 
문돌이가 가르치는 웹 프론트엔드 1차시
문돌이가 가르치는 웹 프론트엔드 1차시문돌이가 가르치는 웹 프론트엔드 1차시
문돌이가 가르치는 웹 프론트엔드 1차시동현 조
 
[Td 2015]java script에게 형(type)이 생겼어요. typescript(박용준)
[Td 2015]java script에게 형(type)이 생겼어요. typescript(박용준)[Td 2015]java script에게 형(type)이 생겼어요. typescript(박용준)
[Td 2015]java script에게 형(type)이 생겼어요. typescript(박용준)Sang Don Kim
 
[Td 2015]치즈케이크 팩토리는 알겠는데, 데이터 팩토리는 뭔가요(한기환)
[Td 2015]치즈케이크 팩토리는 알겠는데, 데이터 팩토리는 뭔가요(한기환)[Td 2015]치즈케이크 팩토리는 알겠는데, 데이터 팩토리는 뭔가요(한기환)
[Td 2015]치즈케이크 팩토리는 알겠는데, 데이터 팩토리는 뭔가요(한기환)Sang Don Kim
 
엔지니어 관점에서 바라본 데이터시각화
엔지니어 관점에서 바라본 데이터시각화엔지니어 관점에서 바라본 데이터시각화
엔지니어 관점에서 바라본 데이터시각화Kenneth Ceyer
 
데이터분석과저널리즘 정제에서 분석까지
데이터분석과저널리즘 정제에서 분석까지데이터분석과저널리즘 정제에서 분석까지
데이터분석과저널리즘 정제에서 분석까지Gee Yeon Hyun
 
First Step In Ajax Korean
First Step In Ajax KoreanFirst Step In Ajax Korean
First Step In Ajax KoreanTerry Cho
 
What to Eat Today
 What to Eat Today What to Eat Today
What to Eat TodayDayeong Kang
 
웹기술 이해 (프론트엔드 기초)
웹기술 이해 (프론트엔드 기초)웹기술 이해 (프론트엔드 기초)
웹기술 이해 (프론트엔드 기초)JoonHee Lee
 
좌충우돌 ORM 개발기 2012 DAUM DEVON
좌충우돌 ORM 개발기 2012 DAUM DEVON좌충우돌 ORM 개발기 2012 DAUM DEVON
좌충우돌 ORM 개발기 2012 DAUM DEVONYounghan Kim
 
Clearboth Study 14th
Clearboth Study 14thClearboth Study 14th
Clearboth Study 14thJiho Choo
 
제 14회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [카페 어디가?팀] : 카페 및 장소 추천 서비스
제 14회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [카페 어디가?팀] : 카페 및 장소 추천 서비스제 14회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [카페 어디가?팀] : 카페 및 장소 추천 서비스
제 14회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [카페 어디가?팀] : 카페 및 장소 추천 서비스BOAZ Bigdata
 
Trendetector : 커뮤니티 키워드 분석 서비스
Trendetector : 커뮤니티 키워드 분석 서비스Trendetector : 커뮤니티 키워드 분석 서비스
Trendetector : 커뮤니티 키워드 분석 서비스Shin Yeongmin
 
엘라스틱서치 이해하기 20160612
엘라스틱서치 이해하기 20160612엘라스틱서치 이해하기 20160612
엘라스틱서치 이해하기 20160612Yong Joon Moon
 
[131]chromium binging 기술을 node.js에 적용해보자
[131]chromium binging 기술을 node.js에 적용해보자[131]chromium binging 기술을 node.js에 적용해보자
[131]chromium binging 기술을 node.js에 적용해보자NAVER D2
 

Similar to 꿈데디 D3.js강의 2주차 (20)

Java script 강의자료_ed13
Java script 강의자료_ed13Java script 강의자료_ed13
Java script 강의자료_ed13
 
문돌이가 가르치는 웹 프론트엔드 1차시
문돌이가 가르치는 웹 프론트엔드 1차시문돌이가 가르치는 웹 프론트엔드 1차시
문돌이가 가르치는 웹 프론트엔드 1차시
 
[Td 2015]java script에게 형(type)이 생겼어요. typescript(박용준)
[Td 2015]java script에게 형(type)이 생겼어요. typescript(박용준)[Td 2015]java script에게 형(type)이 생겼어요. typescript(박용준)
[Td 2015]java script에게 형(type)이 생겼어요. typescript(박용준)
 
[Td 2015]치즈케이크 팩토리는 알겠는데, 데이터 팩토리는 뭔가요(한기환)
[Td 2015]치즈케이크 팩토리는 알겠는데, 데이터 팩토리는 뭔가요(한기환)[Td 2015]치즈케이크 팩토리는 알겠는데, 데이터 팩토리는 뭔가요(한기환)
[Td 2015]치즈케이크 팩토리는 알겠는데, 데이터 팩토리는 뭔가요(한기환)
 
엔지니어 관점에서 바라본 데이터시각화
엔지니어 관점에서 바라본 데이터시각화엔지니어 관점에서 바라본 데이터시각화
엔지니어 관점에서 바라본 데이터시각화
 
데이터분석과저널리즘 정제에서 분석까지
데이터분석과저널리즘 정제에서 분석까지데이터분석과저널리즘 정제에서 분석까지
데이터분석과저널리즘 정제에서 분석까지
 
First Step In Ajax Korean
First Step In Ajax KoreanFirst Step In Ajax Korean
First Step In Ajax Korean
 
What to Eat Today
 What to Eat Today What to Eat Today
What to Eat Today
 
웹기술 이해 (프론트엔드 기초)
웹기술 이해 (프론트엔드 기초)웹기술 이해 (프론트엔드 기초)
웹기술 이해 (프론트엔드 기초)
 
좌충우돌 ORM 개발기 2012 DAUM DEVON
좌충우돌 ORM 개발기 2012 DAUM DEVON좌충우돌 ORM 개발기 2012 DAUM DEVON
좌충우돌 ORM 개발기 2012 DAUM DEVON
 
Clearboth Study 14th
Clearboth Study 14thClearboth Study 14th
Clearboth Study 14th
 
시종설 1조
시종설 1조시종설 1조
시종설 1조
 
Just java
Just javaJust java
Just java
 
Mongo db 최범균
Mongo db 최범균Mongo db 최범균
Mongo db 최범균
 
제 14회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [카페 어디가?팀] : 카페 및 장소 추천 서비스
제 14회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [카페 어디가?팀] : 카페 및 장소 추천 서비스제 14회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [카페 어디가?팀] : 카페 및 장소 추천 서비스
제 14회 보아즈(BOAZ) 빅데이터 컨퍼런스 - [카페 어디가?팀] : 카페 및 장소 추천 서비스
 
[week17] D3.js_Tooltip
[week17] D3.js_Tooltip[week17] D3.js_Tooltip
[week17] D3.js_Tooltip
 
R project_pt1
R project_pt1R project_pt1
R project_pt1
 
Trendetector : 커뮤니티 키워드 분석 서비스
Trendetector : 커뮤니티 키워드 분석 서비스Trendetector : 커뮤니티 키워드 분석 서비스
Trendetector : 커뮤니티 키워드 분석 서비스
 
엘라스틱서치 이해하기 20160612
엘라스틱서치 이해하기 20160612엘라스틱서치 이해하기 20160612
엘라스틱서치 이해하기 20160612
 
[131]chromium binging 기술을 node.js에 적용해보자
[131]chromium binging 기술을 node.js에 적용해보자[131]chromium binging 기술을 node.js에 적용해보자
[131]chromium binging 기술을 node.js에 적용해보자
 

꿈데디 D3.js강의 2주차

  • 1. d3.js 외부 데이터 불러오기 & 막대그래프 2015.4.4
  • 2. Songyi Lim 오늘의 수업 실습이론 • D3.js의 데이터 종류 • CSV 형식 • JSON 형식 • 자바스크립트 ‘변수’ 개념 • 자바스크립트 ‘함수’ 개념 • D3.js의 데이터 매칭 원리 • 데이터 문장 만들기 • 외부 데이터 연동 • 막대그래프 그리기 • bl.ocks.org 만들기
  • 3. Songyi Lim D3.js에서 활용할 수 있는 데이터들 내부 외부 단순배열 데이터 TSV CSV JSON HTML XML TEXT
  • 4. Songyi Lim 종류 설명 TSV 데이터가 탭으로 구분된 형식. 헤더있음. CSV 반점으로 구분한 텍스트. 헤더있음. JSON JavaScript Object Notation’의 약자. XML과 비교해 간단하고 데이터 용량도 적음. 헤더없음. HTML 브라우저로 표시했을 때 데이터를 보기 좋게 표시해줌. 다른 데이터와 달리 레이아웃이 있다. XML 태그를 이용해서 데이터 표현. 범용적인 데이터 포맷. SVG도 XML의 종류 중 하나. TEXT 순수한 문자로만 구성된 데이터 파일. D3.js 외부 데이터 종류별 특징 요약
  • 5. Songyi Lim CSV 반점으로 구분한 텍스트 d3.csv() D3.js 데이터 종류 - CSV item1, item2, item3, 120, 60, 300, 60, 50, 80, 300, 30, 90, 80, 10, 150, 헤더 • 그래프 요소에 연동할 때 속성 이름으로 다뤄짐. • CSV 형식에 헤더가 없으면 별도 처리가 필요하다 • D3.js에서는 첫 줄이 헤더라는 것을 전제
  • 6. Songyi Lim • JavaScript Object Notation. 자바스크립트 문법을 바탕으로 하는 자료형식 • TSV나 CSV와 달리 헤더는 없다. • 여러개의 데이터는 []로 감싼다 • 데이터에 레이블을 붙일 때는 { } 사이에 ‘키 이름 : 값’의 쌍을 필요한 데이터 개수만큼 반점으로 구분. • 계층구조를 가진 데이터에서 많이 사용. [   {“item”  :  “상품A”,  “sales”  :  [150,90,300]},   {“item”  :  “상품B”,  “sales”  :  [70,920,320]},   {“item”  :  “상품C”,  “sales”  :  [20,40,360]},   {“item”  :  “상품D”,  “sales”  :  [50,210,200]},   {“item”  :  “상품E”,  “sales”  :  [400,610,100]},   ] d3.json() ex) D3.js 데이터 종류 - json JSON
  • 7. Songyi Lim [ 실습 ] D3.js 실
  • 9. Songyi Lim [ 실습 ] 실습 데이터 설명 서울시 구별 방범용 CCTV 현황 출처 : 공공데이터포털, http://goo.gl/gB9NhA
  • 10. Songyi Lim [ 실습 ] html 파일 준비하기
  • 11. Songyi Lim [ 실습 ] 자바스크립트 기본 개념 : 변수 선언하기 var  name  =  3  ; 선언 키워드 변수명 변수값 대입연산자 ‘변수’ 값을 저장하기 위한 공간. 각 변수는 하나의 값을 갖는다.
  • 12. Songyi Lim [ 실습 ] D3.js 데이터 파일 연동하기 파일 경로 파일을 불러올 때 오류가 날 경우 데이터가 전달된 부분
  • 13. Songyi Lim [ 실습 ] D3.js 데이터 파일 연동하기
  • 14. Songyi Lim [ 실습 ] 자바스크립트 기본 개념 : 함수 function  name()  {   console.log(data);   }; 함수 키워드 코드 함수 이름 ‘함수’ 특정한 작업을 수행하기 위해 필요한 일련의 구문
  • 15. Songyi Lim [ 실습 ] SVG 그리기 바탕 설정 그래픽 요소에 데이터 연동
  • 16. Songyi Lim [ 실습 ] SVG 그리기 모든 문서 요소 선택. 하지만 아직 생성되지 않았기 때문에 빈 공간과 동일. 데이터 값을 불러옴 문서요소와 데이터 값을 연동시킴. 만약 요소가 없다면 정의되지 않은 요소를 생성함. 문서 요소의 정의를 추가함.
  • 17. Songyi Lim [ 실습 ] D3.js 데이터 매칭 원리 body 선택 svg 추가 .data( ) 데이터 불러옴 빈 그래픽 요소 빈 그래픽 요소 빈 그래픽 요소 빈 그래픽 요소 빈 그래픽 요소 데이터값 데이터값 데이터값 데이터값 데이터값 요소정의 요소정의 요소정의 요소정의 요소정의 .enter( ) 데이터와 문서요소연동 .append( ) 문서요소 정의
  • 18. Songyi Lim [ 실습 ] D3.js - 데이터 문장 만들기
  • 19. Songyi Lim [ 실습 ] D3.js - 데이터 문장 만들기
  • 20. Songyi Lim [ 실습 ] D3.js 막대그래프 그리기 - 바탕 설정하기
  • 21. Songyi Lim [ 실습 ] D3.js 막대그래프 그리기 - 기본 설정
  • 22. Songyi Lim [ 실습 ] D3.js 막대그래프 그리기 - x좌표 설정
  • 23. Songyi Lim [ 실습 ] D3.js 막대그래프 그리기 - 높이 설정
  • 24. Songyi Lim [ 실습 ] D3.js 막대그래프 그리기 - y좌표 설정
  • 25. Songyi Lim [ 실습 ] D3.js 막대그래프 그리기 - y좌표 설정 보통 척도를 활용해 크기에 맞춰 데이터 비율을 자동 설정하지만 오늘 수업에서는 임의로 값을 나눠 비율을 맞춥니다.
  • 26. Songyi Lim [ 실습 ] D3.js 막대그래프 그리기 - 색상 바꾸기
  • 27. Songyi Lim [ 실습 ] D3.js 막대그래프 그리기 - 데이터값 붙이기
  • 28. Songyi Lim [ 실습 ] D3.js 막대그래프 그리기 - 데이터값 꾸미기
  • 29. Songyi Lim [ 실습 ] 팁 - bl.ocks.org 만들기
  • 30. Songyi Lim [ 실습 ] 팁 - bl.ocks.org 만들기
  • 31. Songyi Lim [ 실습 ] 팁 - bl.ocks.org 만들기
  • 32. Songyi Lim [ 실습 ] 팁 - bl.ocks.org 만들기
  • 33. Songyi Lim [ 실습 ] 팁 - bl.ocks.org 만들기
  • 34. Songyi Lim [ 실습 ] 팁 - bl.ocks.org 만들기 bl.ocks.org
  • 35. Songyi Lim [ 실습 ] 팁 - bl.ocks.org 만들기