SlideShare ist ein Scribd-Unternehmen logo
1 von 12
Data Designer
D3.js
04: D3.js 척도와 축 (Scale & Axis)_보충자료
꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale)
d3.scale.linear( )
.domain[시작점, 끝점]
.range[시작점, 끝점]
d3.scale.ordinal( )
.domain[시작점, 끝점]
.rangeBands[시작점, 끝점]
선형척도(scale.linear)와서열척도(scale.ordinal)비교하기
꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale)
d.area
xScale
d.area
xScale
var xScale = d3.scale.ordinal()
.domain(data.map(function(d) { return d.area; }))
.rangeBands([0, width], .3);
.attr("x",
function(d) { return xScale(d.area); })
1. 코드앞에서변수‘xScale’에척도함수를저장했습니다.
2. x좌표에는칼럼명‘area’데이터가들어갑니다.
3. x좌표에척도를적용해데이터가크기에비례해배치되도록설정합니다.
4. x좌표에척도를적용하기위해xScale이라는변수명을쓰고,데이터값인d.area를써줍니다.
5. 이렇게하면데이터값에척도함수가적용됩니다.
=
2.척도가적용된데이터값이
막대그래프의x좌표에삽입됩니다
1.척도가적용되지않은데이터값(d.area)에
척도가적용됩니다.
(x,y)
꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale)
d.value
xScale
d.value
yScale
var yScale = d3.scale.linear()
.domain([0, d3.max(data, function(d) { return d.value; })])
.range([height, 0]);
.attr("y",
function(d) { return yScale(d.value); })
1. 코드앞에서변수‘yScale’에척도함수를저장했습니다.
2. y좌표에는칼럼명‘value’데이터가들어갑니다.
3. y좌표에척도를적용해데이터가크기에비례해배치되도록설정합니다.
4. y좌표에척도를적용하기위해yScale이라는변수명을쓰고,데이터값인d.value를써줍니다.
5. 이렇게하면데이터값에척도함수가적용됩니다.
=
(x,y)
2.척도가적용된데이터값이
막대그래프의y좌표에삽입됩니다
1.척도가적용되지않은데이터값(d.value)에
척도가적용됩니다.
꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale)
여백을포함한영역이svg영역이가장상위에생성됐습니다.
꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale)
margin.bottom : 30px
margin.top : 20px
margin.right : 20pxmargin.left: 40px
그래프에서여백영역은다음과같습니다.
꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale)
height
width
width + margin.left + margin.right
height + margin.top + margin.bottom
꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale)
height
width
var xScale = d3.scale.ordinal()
.domain(data.map(function(d) { return d.area; }))
.rangeBands([0, width], .3);
var yScale = d3.scale.linear()
.domain([0, d3.max(data, function(d) { return d.value; })])
.range([height, 0]);
xScale
yScale
x
x
그래프의출력범위를(rangeBands혹은range)여백을제외한값(width,height)로설정했기때문에
막대그래프가여백을제외한영역에생성됩니다.
꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale)
var svg = d3.select("body")
.append("svg")
.attr("width", width + margin.left + margin.right)
.attr("height", height + margin.top + margin.bottom)
.append(“g")
.attr("transform", "translate(" + margin.left + "," + margin.top + ")");
svg안에‘g’가추가된것을확인할수있습니다.
translate가적용된것을확인할수있습니다.
꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale)
x축요소가‘g’로묶여있는걸확인할수있습니다
x축에translate가적용된것을확인할수있습니다.
svg.append("g")
.attr("class", "axis")
.attr("transform", "translate(0," + height + ")")
.call(xAxis);
꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale)
y축요소가‘g’로묶여있는걸확인할수있습니다
Neuro Associates
・ Portfolio : neuroassociates.co.kr/portfolio
・ Address : 서울특별시 마포구 상수동 145-1 6F
・ Site : neuroassociates.co.kr
・ Mail : neuro.associates.consulting@gmail.com or info@neuroassociates.co.kr
・ SNS : www.facebook.com/neuroassociatessns
・ Phone : 02-334-2013

Weitere ähnliche Inhalte

Was ist angesagt?

문디 14주차 발제 scatter plot
문디 14주차 발제 scatter plot문디 14주차 발제 scatter plot
문디 14주차 발제 scatter plot
Min Jeong Cho
 
practice2
practice2practice2
practice2
yosm
 
이산수학 C1 프로젝트 4
이산수학 C1 프로젝트 4이산수학 C1 프로젝트 4
이산수학 C1 프로젝트 4
pkok15
 

Was ist angesagt? (20)

[week11] R_ggmap, leaflet
[week11] R_ggmap, leaflet[week11] R_ggmap, leaflet
[week11] R_ggmap, leaflet
 
[Week13] D3.js_Bar Chart
[Week13] D3.js_Bar Chart[Week13] D3.js_Bar Chart
[Week13] D3.js_Bar Chart
 
[week16] D3.js_Transition
[week16] D3.js_Transition[week16] D3.js_Transition
[week16] D3.js_Transition
 
[week12] D3.js_Basic
[week12] D3.js_Basic[week12] D3.js_Basic
[week12] D3.js_Basic
 
R intro
R introR intro
R intro
 
꿈데디 D3.js강의 2주차
꿈데디 D3.js강의 2주차꿈데디 D3.js강의 2주차
꿈데디 D3.js강의 2주차
 
R_datamining
R_dataminingR_datamining
R_datamining
 
꿈데디 D3.js강의 6주차
꿈데디 D3.js강의 6주차꿈데디 D3.js강의 6주차
꿈데디 D3.js강의 6주차
 
R 스터디 네번째
R 스터디 네번째R 스터디 네번째
R 스터디 네번째
 
문디 14주차 발제 scatter plot
문디 14주차 발제 scatter plot문디 14주차 발제 scatter plot
문디 14주차 발제 scatter plot
 
R 스터디 두번째
R 스터디 두번째R 스터디 두번째
R 스터디 두번째
 
practice2
practice2practice2
practice2
 
[week14] Getting started with D3.js
[week14] Getting started with D3.js[week14] Getting started with D3.js
[week14] Getting started with D3.js
 
R 스터디 세번째
R 스터디 세번째R 스터디 세번째
R 스터디 세번째
 
이산수학 C1 프로젝트 4
이산수학 C1 프로젝트 4이산수학 C1 프로젝트 4
이산수학 C1 프로젝트 4
 
이산수학04
이산수학04이산수학04
이산수학04
 
Python
PythonPython
Python
 
Power bi
Power biPower bi
Power bi
 
Drawing with data
Drawing with dataDrawing with data
Drawing with data
 
R 기초 : R Basics
R 기초 : R BasicsR 기초 : R Basics
R 기초 : R Basics
 

Andere mochten auch

[문디 10주차] d3.js 상호작용
[문디 10주차] d3.js  상호작용[문디 10주차] d3.js  상호작용
[문디 10주차] d3.js 상호작용
YooDuck Hwang
 
Social Innovation Spark
Social Innovation Spark Social Innovation Spark
Social Innovation Spark
Spark
 
Spark_Overview_qna
Spark_Overview_qnaSpark_Overview_qna
Spark_Overview_qna
현철 박
 

Andere mochten auch (19)

[Week20] D3.js_Mapping
[Week20] D3.js_Mapping[Week20] D3.js_Mapping
[Week20] D3.js_Mapping
 
D3.js workshop
D3.js workshopD3.js workshop
D3.js workshop
 
디포커스 전홍구
디포커스 전홍구디포커스 전홍구
디포커스 전홍구
 
[ 하코사세미나] 의외로 쉬운 D3 그래프 퍼블리싱
[ 하코사세미나] 의외로 쉬운 D3 그래프 퍼블리싱[ 하코사세미나] 의외로 쉬운 D3 그래프 퍼블리싱
[ 하코사세미나] 의외로 쉬운 D3 그래프 퍼블리싱
 
빅데이터 분석 시각화 분석 : 3장 시각화 방법
빅데이터 분석 시각화 분석 : 3장 시각화 방법빅데이터 분석 시각화 분석 : 3장 시각화 방법
빅데이터 분석 시각화 분석 : 3장 시각화 방법
 
[문디 10주차] d3.js 상호작용
[문디 10주차] d3.js  상호작용[문디 10주차] d3.js  상호작용
[문디 10주차] d3.js 상호작용
 
블로터아카데미_타블로퍼블릭이란(뉴스젤리)
블로터아카데미_타블로퍼블릭이란(뉴스젤리)블로터아카데미_타블로퍼블릭이란(뉴스젤리)
블로터아카데미_타블로퍼블릭이란(뉴스젤리)
 
꿈꾸는 데이터 디자이너 시즌2 교육설명회
꿈꾸는 데이터 디자이너 시즌2 교육설명회꿈꾸는 데이터 디자이너 시즌2 교육설명회
꿈꾸는 데이터 디자이너 시즌2 교육설명회
 
Social Innovation Spark
Social Innovation Spark Social Innovation Spark
Social Innovation Spark
 
Bootstrap docs pack 설치설명서
Bootstrap docs pack 설치설명서Bootstrap docs pack 설치설명서
Bootstrap docs pack 설치설명서
 
Bootstrap starter pack on kimsQ 설치설명서
Bootstrap starter pack on kimsQ 설치설명서Bootstrap starter pack on kimsQ 설치설명서
Bootstrap starter pack on kimsQ 설치설명서
 
엔터프라이즈 웹애플리케이션 솔루션 Sencha ExtJS 5
엔터프라이즈 웹애플리케이션 솔루션 Sencha ExtJS 5엔터프라이즈 웹애플리케이션 솔루션 Sencha ExtJS 5
엔터프라이즈 웹애플리케이션 솔루션 Sencha ExtJS 5
 
SK플래닛 M&C부문 D-spark #1 Intro & New Digital
 SK플래닛 M&C부문 D-spark #1 Intro & New Digital SK플래닛 M&C부문 D-spark #1 Intro & New Digital
SK플래닛 M&C부문 D-spark #1 Intro & New Digital
 
5. spc control charts
5. spc   control charts5. spc   control charts
5. spc control charts
 
[북리뷰] 데이터포인트 4장
[북리뷰] 데이터포인트 4장[북리뷰] 데이터포인트 4장
[북리뷰] 데이터포인트 4장
 
Raphael.js로 SVG 차트 만들기
Raphael.js로 SVG 차트 만들기Raphael.js로 SVG 차트 만들기
Raphael.js로 SVG 차트 만들기
 
데이터분석과 저널리즘 5장(뒷부분)
데이터분석과 저널리즘 5장(뒷부분) 데이터분석과 저널리즘 5장(뒷부분)
데이터분석과 저널리즘 5장(뒷부분)
 
[HeXathon] 발표자료 - 세모알
[HeXathon] 발표자료 - 세모알[HeXathon] 발표자료 - 세모알
[HeXathon] 발표자료 - 세모알
 
Spark_Overview_qna
Spark_Overview_qnaSpark_Overview_qna
Spark_Overview_qna
 

Ähnlich wie [Week14] D3.js_Scale and Axis (보충자료)

Proj4를 이용한 좌표계 변환
Proj4를 이용한 좌표계 변환Proj4를 이용한 좌표계 변환
Proj4를 이용한 좌표계 변환
BJ Jang
 
[0312 조진현] good bye dx9
[0312 조진현] good bye dx9[0312 조진현] good bye dx9
[0312 조진현] good bye dx9
진현 조
 

Ähnlich wie [Week14] D3.js_Scale and Axis (보충자료) (20)

R 프로그램의 이해와 활용 v1.1
R 프로그램의 이해와 활용 v1.1R 프로그램의 이해와 활용 v1.1
R 프로그램의 이해와 활용 v1.1
 
Vue.js 입문 03 데이터와 메소드
Vue.js 입문 03 데이터와 메소드Vue.js 입문 03 데이터와 메소드
Vue.js 입문 03 데이터와 메소드
 
R 스터디 첫번째
R 스터디 첫번째R 스터디 첫번째
R 스터디 첫번째
 
R 프로그래밍을 이용한 야생동물 행동권(HR) 분석
R 프로그래밍을 이용한 야생동물 행동권(HR) 분석R 프로그래밍을 이용한 야생동물 행동권(HR) 분석
R 프로그래밍을 이용한 야생동물 행동권(HR) 분석
 
R 프로그래밍-향상된 데이타 조작
R 프로그래밍-향상된 데이타 조작R 프로그래밍-향상된 데이타 조작
R 프로그래밍-향상된 데이타 조작
 
Impress js
Impress jsImpress js
Impress js
 
R을 이용한 데이터 분석
R을 이용한 데이터 분석R을 이용한 데이터 분석
R을 이용한 데이터 분석
 
함수적 사고 2장
함수적 사고 2장함수적 사고 2장
함수적 사고 2장
 
Proj4를 이용한 좌표계 변환
Proj4를 이용한 좌표계 변환Proj4를 이용한 좌표계 변환
Proj4를 이용한 좌표계 변환
 
Mean 스택을 사용한 IoT 개발
Mean 스택을 사용한 IoT 개발Mean 스택을 사용한 IoT 개발
Mean 스택을 사용한 IoT 개발
 
[0312 조진현] good bye dx9
[0312 조진현] good bye dx9[0312 조진현] good bye dx9
[0312 조진현] good bye dx9
 
생체 광학 데이터 분석 AI 경진대회 4위 수상작
생체 광학 데이터 분석 AI 경진대회 4위 수상작생체 광학 데이터 분석 AI 경진대회 4위 수상작
생체 광학 데이터 분석 AI 경진대회 4위 수상작
 
3ds maxscript 튜토리얼_20151206_서진택
3ds maxscript 튜토리얼_20151206_서진택3ds maxscript 튜토리얼_20151206_서진택
3ds maxscript 튜토리얼_20151206_서진택
 
[0602 박민근] Direct2D
[0602 박민근] Direct2D[0602 박민근] Direct2D
[0602 박민근] Direct2D
 
Implements Cascaded Shadow Maps with using Texture Array
Implements Cascaded Shadow Maps with using Texture ArrayImplements Cascaded Shadow Maps with using Texture Array
Implements Cascaded Shadow Maps with using Texture Array
 
[0129 박민근] direct x2d
[0129 박민근] direct x2d[0129 박민근] direct x2d
[0129 박민근] direct x2d
 
Super map idesktop교육교재심화
Super map idesktop교육교재심화Super map idesktop교육교재심화
Super map idesktop교육교재심화
 
Unity Surface Shader for Artist 01
Unity Surface Shader for Artist 01Unity Surface Shader for Artist 01
Unity Surface Shader for Artist 01
 
Pair RDD - Spark
Pair RDD - SparkPair RDD - Spark
Pair RDD - Spark
 
Scalability
ScalabilityScalability
Scalability
 

Mehr von neuroassociates

Mehr von neuroassociates (15)

Bloter 넥스트 저널리즘 스쿨 강의자료
Bloter 넥스트 저널리즘 스쿨 강의자료Bloter 넥스트 저널리즘 스쿨 강의자료
Bloter 넥스트 저널리즘 스쿨 강의자료
 
[week8] 데이터읽어주는남자
[week8] 데이터읽어주는남자[week8] 데이터읽어주는남자
[week8] 데이터읽어주는남자
 
[week7] 데이터읽어주는남자
[week7] 데이터읽어주는남자[week7] 데이터읽어주는남자
[week7] 데이터읽어주는남자
 
[week6] 데이터읽어주는남자
[week6] 데이터읽어주는남자[week6] 데이터읽어주는남자
[week6] 데이터읽어주는남자
 
[week9]R_statics
[week9]R_statics[week9]R_statics
[week9]R_statics
 
[week7]R_Wrangling(2)
[week7]R_Wrangling(2)[week7]R_Wrangling(2)
[week7]R_Wrangling(2)
 
[Week5]데이터읽어주는남자
[Week5]데이터읽어주는남자[Week5]데이터읽어주는남자
[Week5]데이터읽어주는남자
 
[Week5]R_scraping
[Week5]R_scraping[Week5]R_scraping
[Week5]R_scraping
 
[Week4]데이터읽어주는남자
[Week4]데이터읽어주는남자[Week4]데이터읽어주는남자
[Week4]데이터읽어주는남자
 
[Week4] Google refine
[Week4] Google refine[Week4] Google refine
[Week4] Google refine
 
[Week3]데이터읽어주는남자
[Week3]데이터읽어주는남자[Week3]데이터읽어주는남자
[Week3]데이터읽어주는남자
 
[Week2]데이터읽어주는남자
[Week2]데이터읽어주는남자[Week2]데이터읽어주는남자
[Week2]데이터읽어주는남자
 
꿈꾸는 데이터 디자이너 시즌2 교육 설명회 2부
꿈꾸는 데이터 디자이너 시즌2 교육 설명회 2부꿈꾸는 데이터 디자이너 시즌2 교육 설명회 2부
꿈꾸는 데이터 디자이너 시즌2 교육 설명회 2부
 
꿈꾸는 데이터 디자이너 1기를 끝내며
꿈꾸는 데이터 디자이너 1기를 끝내며꿈꾸는 데이터 디자이너 1기를 끝내며
꿈꾸는 데이터 디자이너 1기를 끝내며
 
[Week10] R graphics
[Week10] R graphics[Week10] R graphics
[Week10] R graphics
 

[Week14] D3.js_Scale and Axis (보충자료)

  • 1. Data Designer D3.js 04: D3.js 척도와 축 (Scale & Axis)_보충자료
  • 2. 꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale) d3.scale.linear( ) .domain[시작점, 끝점] .range[시작점, 끝점] d3.scale.ordinal( ) .domain[시작점, 끝점] .rangeBands[시작점, 끝점] 선형척도(scale.linear)와서열척도(scale.ordinal)비교하기
  • 3. 꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale) d.area xScale d.area xScale var xScale = d3.scale.ordinal() .domain(data.map(function(d) { return d.area; })) .rangeBands([0, width], .3); .attr("x", function(d) { return xScale(d.area); }) 1. 코드앞에서변수‘xScale’에척도함수를저장했습니다. 2. x좌표에는칼럼명‘area’데이터가들어갑니다. 3. x좌표에척도를적용해데이터가크기에비례해배치되도록설정합니다. 4. x좌표에척도를적용하기위해xScale이라는변수명을쓰고,데이터값인d.area를써줍니다. 5. 이렇게하면데이터값에척도함수가적용됩니다. = 2.척도가적용된데이터값이 막대그래프의x좌표에삽입됩니다 1.척도가적용되지않은데이터값(d.area)에 척도가적용됩니다. (x,y)
  • 4. 꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale) d.value xScale d.value yScale var yScale = d3.scale.linear() .domain([0, d3.max(data, function(d) { return d.value; })]) .range([height, 0]); .attr("y", function(d) { return yScale(d.value); }) 1. 코드앞에서변수‘yScale’에척도함수를저장했습니다. 2. y좌표에는칼럼명‘value’데이터가들어갑니다. 3. y좌표에척도를적용해데이터가크기에비례해배치되도록설정합니다. 4. y좌표에척도를적용하기위해yScale이라는변수명을쓰고,데이터값인d.value를써줍니다. 5. 이렇게하면데이터값에척도함수가적용됩니다. = (x,y) 2.척도가적용된데이터값이 막대그래프의y좌표에삽입됩니다 1.척도가적용되지않은데이터값(d.value)에 척도가적용됩니다.
  • 5. 꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale) 여백을포함한영역이svg영역이가장상위에생성됐습니다.
  • 6. 꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale) margin.bottom : 30px margin.top : 20px margin.right : 20pxmargin.left: 40px 그래프에서여백영역은다음과같습니다.
  • 7. 꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale) height width width + margin.left + margin.right height + margin.top + margin.bottom
  • 8. 꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale) height width var xScale = d3.scale.ordinal() .domain(data.map(function(d) { return d.area; })) .rangeBands([0, width], .3); var yScale = d3.scale.linear() .domain([0, d3.max(data, function(d) { return d.value; })]) .range([height, 0]); xScale yScale x x 그래프의출력범위를(rangeBands혹은range)여백을제외한값(width,height)로설정했기때문에 막대그래프가여백을제외한영역에생성됩니다.
  • 9. 꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale) var svg = d3.select("body") .append("svg") .attr("width", width + margin.left + margin.right) .attr("height", height + margin.top + margin.bottom) .append(“g") .attr("transform", "translate(" + margin.left + "," + margin.top + ")"); svg안에‘g’가추가된것을확인할수있습니다. translate가적용된것을확인할수있습니다.
  • 10. 꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale) x축요소가‘g’로묶여있는걸확인할수있습니다 x축에translate가적용된것을확인할수있습니다. svg.append("g") .attr("class", "axis") .attr("transform", "translate(0," + height + ")") .call(xAxis);
  • 11. 꿈꾸는데이터디자이너 시즌2d3.js 척도 (d3.scale) y축요소가‘g’로묶여있는걸확인할수있습니다
  • 12. Neuro Associates ・ Portfolio : neuroassociates.co.kr/portfolio ・ Address : 서울특별시 마포구 상수동 145-1 6F ・ Site : neuroassociates.co.kr ・ Mail : neuro.associates.consulting@gmail.com or info@neuroassociates.co.kr ・ SNS : www.facebook.com/neuroassociatessns ・ Phone : 02-334-2013