pantab을 사용하면 간단하게 Pandas의 dataframe을 hyper 파일로 다운로드 받고 바로 서버에 게시할수 있다.
#pantab 설치방법
!pip install pantab
#pantab과 같이 깔아야할 라이브러리 tableauhyperapi 설치
#주의사항 : 현재 tableauhyperapi와 pantab의 버전 충돌 문제가 있다(2022_04_05기준) 0.0.14401로 설치하면 정상작동한다.
!pip install tableauhyperapi==0.0.14401
#dataframe을 hyper 파일로 변경 + 저장하기
import pantab
pantab.frame_to_hyper(hyper로 변경할 dataframe , "경로/파일명.hyper" , table = "본인이 원하는 데이터 테이블명 " )
#경로상에 hyper 파일이 생성되어 있을것이다.
# hyper 파일을 서버로 보내주기
# 1) 우선 해당 서버의 정보를 입력 (tableau_auth) 해준뒤
# 2) 해당 서버를 저장해줄 프로젝트의 id가 필요하다(project_id)
# 3) 2) 이때 프로젝트명은 상위 프로젝트명에 상관없이 server를 저장해줄 프로젝트명이다
(ex) 상위프로젝트 > 하위프로젝트 > hyper 일경우 "하위프로젝트_id"만 필요하다.
#tableauserverclient 라이브러리 설치
!pip install tableauserverclient
import tableauserverclient as TSC
tableau_auth=TSC.TableauAuth("태블로 서버에 접속할때 쓰는 아이디", "비밀번호",site_id = '')
server = TSC.Server("태블로 서버 주소/ " , use_server_version=True)
server.auth.sign.sign_in(tableau_auth)
projectname = '프로젝트명'
print([(project.name, project_id) for project in TSC.Pager(server.projects) if project.name.startswith(projectname)])
# 위의 project_id를 사용하여 서버에 hyper파일을 업로드 하자
TS_CONFIG = {
'my_env': {
'server': '태블로 서버 주소',
'api_version': 'api버전',
'username': '태블로 서버에 접속할때 쓰는 아이디',
'password': '비밀번호',
'site_name': '',
'site_url': ''
}
}
##
conn = TableauServerConnection(config_json=TS_CONFIG, env='my_env')
conn.sign_in()
response = conn.publish_datasource(datasource_file_path='hyper파일이 저장되있는 경로.hyper',
datasource_name="서버에 저장시 명명될 데이터 원본명",
project_id="위에서 구한 project_id")
conn.sign_out()
##위의 절차대로 하면 dataframe을 hyper로 변경하고 해당 hyper파일을 태블로 서버에 게시할수 있다.
'Tableau 흡수내용' 카테고리의 다른 글
[Tableau]클릭 시 HighLight 표시 안되게 하기(Unabled click highlight) (0) | 2022.04.12 |
---|---|
[Tableau]Keep Percentage When filtered(전체기준 퍼센트 유지하기) (0) | 2022.04.11 |
[태블로(Tableau)] -(음수) 인경우에만 수익률 표시하기 (0) | 2022.03.23 |
[태블로(Tableau)]+,-에 따라 (화살표/색상) 출력해주기 (0) | 2022.03.23 |
[태블로(Tableau)]Tabpy를 사용하는 2가지 방법(직접입력,함수) -Tabpy_1(Tableau에서 python사용하는 방법) (0) | 2022.03.22 |