네이버 billboard.js 차트 라이브러리 샘플 및 무료 사용 가능 여부
무료 사용 가능 여부
네이버 차트 라이브러리인 billboard.js는 오픈소스에서 사용이 많이 되는 라이르러리인 MIT 라이센스이다.
MIT 라이센스를 모르는 경우는 아래 사이트를 참고하기 바란다.
복제, 배포, 수정 허용 여부 및 배포시 소스코드 제공의무와 범위에 대해 자세히 나와 있다.
.
.
www.olis.or.kr/license/Detailselect.do?lId=1006&mapCode=010006
위의 내용을 참고해서 사용하려는 목적 범위에서 사용이 가능한지 판단이 필요하다.
샘플 코드
막대 그래프를 그릴수 있는 샘플은 크게 스크립트, css링크 부분과 그래프를 그리는 function을 정의하는 부분, 그래프를 표시하는 영역의 선언 부분으로 나눌 수 있다.
그리 어렵지 않은 소스이니 쉽게 테스트가 가능하다.
$(function(){}) 안에 function 내용을 작성해야지 오류 없이 테스트가 가능하다.
<!DOCTYPE html>
<html>
<head>
<script src="/js/jquery-1.12.3.js"></script>
<script src="https://d3js.org/d3.v5.min.js"></script>
<script src="/js/billboard.pkgd.js"></script>
<link rel="stylesheet" href="/css/billboard.css">
<link rel="stylesheet" href="/css/theme/insight.min.css">
<script>
$(function(){
var chart = bb.generate({
data: {
columns: [
["data1", 30, 200, 100, 400, 150, 250],
["data2", 130, 100, 140, 200, 150, 50]
],
type: "bar", // for ESM specify as: bar()
},
bar: {
width: {
ratio: 0.5
}
},
bindto: "#barChart"
});
setTimeout(function() {
chart.load({
columns: [
["data3", 130, -150, 200, 300, -200, 100]
]
});
}, 1000);
})
</script>
</head>
<body>
<div id="barChart"></div>
</body>
</html>
위에 설명한 내용 말고 더 자세한 내용은 아래 사이트에서 확인할 수 있다.
.
ModuleNotFoundError: No module named 'corsheaders'
기존에 만들었던 프로그램이 자바 기반으로 되어 있다 보니, 파이썬과 연동하기 위해 django로 웹서버를 구축했다.
웹서버의 기능만으로는 django에서 충분히 가능했지만, 타도메인간의 통신을 위해 CORS를 적용하기 위해 약 1일 간 문제를 해결하기가 쉽지 않았다.
pip intall django-cors-headers를 한 후에 django를 기동하면 아래와 같이 오류가 났다.
.
ModuleNotFoundError: No module named 'corsheaders'
구글링시에 비슷한 케이스가 아닌 답변만 많다 보니 솔루션 찾기가 더 힘들었다.
기존 방법)
1. 파이참에서 django-cors-headers를 추가한다.
2. django 웹서버를 기동한다.
해결 방법)
1. 기존에 파이참으로 설치한 django-cors-headers를 삭제한다.
2. 명령프롬프트에서 pip3 명령어를 이용해 직접 install 명령을 수행한다.
D:\>pip3 install django-cors-headers
3. django 웹서버를 기동한다.
.
오류 업시 정상적으로 수행되는 것을 확인할 수 있다.
추정되는 원인으로는 글로벌 환경변수와 관련되어 있는 것으로 생각된다.
django get parameter 얻기
django에서 get parameter 얻는 방법을 알아보자.
# Create your views here.
from django.shortcuts import render
from django.http import HttpResponse
from blogop.com.util.LogUtil import CreateLogger
# Create your views here.
def index(request):
logger = CreateLogger("log_test")
logger.debug("################")
logger.debug("################")
#http://localhost:8000/?name=aa&keyword=keyword3
name = request.GET.get("name")
keyword = request.GET.get("keyword")
return HttpResponse(keyword)
위의 내용과 같이 http://localhost:8000/?name=aa&keyword=keyword3 와 같이 호출을 할 경우
request.GET.get("name")으로 파라미터를 확인할 수 있다.
.
'Web' 카테고리의 다른 글
카프카 서버 설치 및 테스트 방법 안내 (0) | 2021.03.14 |
---|---|
APM 버전 확인 방법 (0) | 2019.04.28 |
크롬 ajax loading image(Ajax loader image is not showing up in chrome) (0) | 2018.02.04 |
크로스 사이트 요청 위조 예제 (0) | 2017.10.02 |
크로스 사이트 요청 위조 (0) | 2017.09.23 |