์ฌ๋ฌ๋ถ, ์๋
ํ์ธ์,
์ฌ๊ธฐ์ ์์ ํ์ด์ง์์ ์กฐ๊ธ ๊ฒ์ํ์ง๋ง ๋ก๊ทธ ์ค์ผ์ผ ์ถ์ ๋ํด์๋ ์๋ฌด๊ฒ๋ ์ฐพ์ง ๋ชปํ์ต๋๋ค. ๊ทธ๊ฒ๋ค์ ๋ง๋๋ ๊ฒ์ด ๊ฐ๋ฅํฉ๋๊น? ๊ทธ๋ ์ง ์์ ๊ฒฝ์ฐ ๊ธฐ๋ฅ ์์ฒญ์ผ๋ก ๊ฐ์ฃผํ์ญ์์ค.
์น์ ํ๋,
์ผ์ฝํ.
์๋
ํ์ธ์, ์ฃ์กํฉ๋๋ค. ์ด์ ์ง์ ๋ก๊ทธ ์ค์ผ์ผ ๋ฐ์ดํฐ๋ฅผ ์์ฑํ๊ณ ํ๋กฏํด์ผ ํฉ๋๋ค.
๋์ค์ ์๋ก์ด ๊ธฐ๋ฅ์ผ๋ก ๊ณ ๋ คํ๊ฒ ์ต๋๋ค.
์๋ ํ์ธ์ ๋ง์ฌ์ ํค๋
๋ก๊ทธ ์ค์ผ์ผ ๋ฐ์ดํฐ๋ฅผ ์์ฑํด์ผ ํฉ๋๋ค.
์ง๊ธ ์ด ๊ธฐ๋ฅ์ ์๋ฎฌ๋ ์ดํธํ ์ ์๋ค๋ ๋ง์
๋๊น? #Axis ์์ ๋ฅผ ์ดํด๋ณด์์ง๋ง ์์์ ์์น์ ๋๊ธ์ ๋ฃ๋ ๋ฐฉ๋ฒ์ ์ฐพ์ง ๋ชปํ์ต๋๋ค. ์ด๋ค ์์ ๋ฅผ ์ดํด๋ด์ผ ํฉ๋๊น?
๊ทํ์ ์๊ฐ๊ณผ ๋
ธ๊ณ ์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค.
์ผ์ฝํ.
๋ฐ์ดํฐ๋ฅผ ์ค๋นํ ๋ ๋ก๊ทธ ์ค์ผ์ผ๋ก ๋ณํํฉ๋๋ค. Python์์ ๋ค์๊ณผ ๊ฐ์ ๋ชฉ๋ก์ด ์๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค.
[100,1000,10000]
๋น์ ์ ๋จ์ง ์ด๊ฒ์
import math
log_list = map(math.log10,[100,1000,10000])
Masayuki์ ํด๊ฒฐ ๋ฐฉ๋ฒ ๊ตฌํ:
data_test_original = ['data1', 10, 100, 1000, 3, 500, 50, 5, 3000]
data_test = ['data1'];
for(var i=1; i<data_test_original.length; i++){
data_test[i] = Math.log(data_test_original[i]) / Math.LN10;
}
var chart_test = c3.generate({
bindto: '#chart_test',
size: {
height: 240,
width: 480
},
data: {
columns: [
data_test
]
},
axis : {
y : {
tick: {
format: function (d) { return Math.pow(10,d).toFixed(2); }
}
}
},
});
hai @pbustosl ,, ๊ทธ๊ฒ์ ๋๋ฅผ ์ํด ์ผํฉ๋๋ค! thx...ํ์ง๋ง data1์ ๊ฐ 0์ด ์์ ๋ ์๋ํ์ง ์์ต๋๋ค. ์ด๋ป๊ฒ ๊ฐ 0์ ์ฒ๋ฆฌํ ์ ์์ต๋๊น? ๊ฐ์ฌ
๋ค์์ ๊ฐ์ ํ์๋ ์ง์ ํฉ๋๋ค.
data_test_original = ['data1', 10, 100, 1000, 3, 500, 50, 5, 3000]
data_test = ['data1'];
for(var i=1; i<data_test_original.length; i++){
data_test[i] = Math.log(data_test_original[i]) / Math.LN10;
}
var chart_test = c3.generate({
size: {
height: 240,
width: 480
},
data: {
type:"bar",
columns: [
data_test
],
labels : {show:true,
format: {
data1 : function(d,id){console.log(id, Math.pow(10,d));return Math.pow(10,d).toFixed(0);}
}
}
},
axis : {
y : {
show:false,
tick: {
format: function (d) { return Math.pow(10,d).toFixed(0); }
}
}
},
});
๊ทธ๊ฒ์ ๊ฝค ์ถํ ํดํน์ ๋๋ค. ๋ชจ๋ d3 ์ค์ผ์ผ์ ์ฐ๊ฒฐํ ์ ์๋ API๋ฅผ ๋ ธ์ถํ ์ ์์ต๋๊น?
+1 ...๋ก๊ทธ ์ค์ผ์ผ๋ก ์ฐจํธ๋ฅผ ๊ทธ๋ ค์ผ ํฉ๋๋ค.
๋๋ ๋ํ ๋ด y ์ถ์ ๋ก๊ทธ๋ก ์ค์ ํ๋ ๊ธฐ๋ฅ์ ์ํฉ๋๋ค.
์ ๋ y์ถ์ ๋ก๊ทธ ์ค์ผ์ผ์ ์ฌ์ฉํ ์ ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
์ด๊ฒ์ ๋ํ ์์์ด ์์ต๋๊น?
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ค๊ณ ํ์ต๋๋ค(#2100). ์ด๊ฒ์ 100% ์๋ฒฝํ์ง๋ ์์ง๋ง ๋ง์ ๊ฒฝ์ฐ์ ์ถฉ๋ถํ ์ ์์ต๋๋ค.
@pbustosl ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์๋
๊ทธ๋ฌ๋ ๋ฐ์ดํฐ ๊ฐ์ด 1์ผ ๋ y์ถ์ 1๋ถํฐ ์์ํ์ต๋๋ค. ๋ํ ๋ฐ์ดํฐ ๊ฐ์ด 0์ผ ๋ ์ฐจํธ๊ฐ ๋ ๋๋ง๋์ง ์์์ต๋๋ค.
๋๋ ๊ทธ๊ฒ์ ๋ํ ๋ช ๊ฐ์ง ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ํํ์ต๋๋ค.
์ด JSFiddle https://jsfiddle.net/86chryat/ ๋ฅผ ์ฐธ์กฐ
d3.js๋ ์ถ์ ๋ก๊ทธ ์ค์ผ์ผ์ ์ง์ ์ง์ํ๋ฏ๋ก c3์ ํ์๋ ์ ์๋ค๋ฉด ์ ๋ง ์ข์ ๊ฒ์ ๋๋ค. ํฑ๋ ์ฒ๋ฆฌํ๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ๋ฅผ ๋ค์ ๊ณ์ฐํ๋ ๊ฒ๋ณด๋ค ํจ์ฌ ์ข์ ์๋ฃจ์ ์ ๋๋ค.
๋ก๊ทธ ์ฒ๋๊ฐ ์ ์ฉํ ๊ฒ์ด๋ผ๋ ๋ฐ ๋์ํฉ๋๋ค.
@masayuki0812 - ์ด๊ฒ์ ๋ซ๋๋ค๋ ๊ฒ์ ์ง์์ ๊ณ ๋ คํ์ง ์๋๋ค๋ ๋ป์ธ๊ฐ์? ํน์ ์์ฉ ํ๋ก๊ทธ๋จ์์ ์ ๋ง ์ค์ํ ๊ธฐ๋ฅ์ ๋๋ค. ์๊ฐ/์ํฅ์ด ์๋ค๋ฉด ์ ์ ํ ํตํฉ์ ํ๋ ๊ฒ์ด ์ข์ ๊ฒ์ ๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
๊ทธ๊ฒ์ ๊ฝค ์ถํ ํดํน์ ๋๋ค. ๋ชจ๋ d3 ์ค์ผ์ผ์ ์ฐ๊ฒฐํ ์ ์๋ API๋ฅผ ๋ ธ์ถํ ์ ์์ต๋๊น?