본문 바로가기
4. 데이터분석

Oracle Analytics Cloud(OAC) :활용팁 - 대시보드 필터 + 파라메터 활용 하기

by Unemployed 2024. 2. 26.

대시보드 필터라는 필터 콘트롤에 대해서 알아보고, 필터로 선택한 내용을 변수로 처리하는 간단한 방법

지난 포스팅에서는 전체 캔버스에 대한 필터에 대해서 알아 보았습니다.

Oracle Analytics Cloud(OAC) - 활용팁 - TopN + 전체 합 표현하기

 

이번 시간에는 대시보드 필터라는 필터 콘트롤에 대해서 알아보고 부가적으로 필터로 선택한 내용을 변수로 처리하는 간단한 방법을 알아보도록 하겠습니다.

 

대시보드 필터 -

대시보드 필터는 사용자가 실행 시에 워크북 캔버스의 모든 시각화에 대한 필터 값을 지정할 수 있게 합니다.

 

대시보드 필터를 대시보드의 어떤 캔버스에도 추가할 수 있어서 사용자가 자신만의 값을 선택하고 해당 캔버스의 특정 데이터를 볼 수 있게 합니다. 또한 특정 시각화 차트에만 선별적으로 적용이 가능합니다. 

 

그리도 모든 필터에서는 선택된 값을 쉽게 변수 처리 할 수 있습니다. 

 

참조 ( https://docs.oracle.com/en/cloud/paas/analytics-cloud/acubi/use-dashboard-filter.html#GUID-CAC23BF0-2F7F-42D1-BB71-CC5F9BCE75F3)

 

이전 포스팅과 같이 오라클의 SH 스키마 데이터로 예를 들어 보겠습니다.

아래와 같이 간단하게 제품 카타고리별, 판매 채널별, 판매 금액을 피봇 형태로 표기가 가능합니다. 

 

Properties -> Totals 에서 Grand Total 을 추가하고 Total Columns Position 을 Before 로 맞추면 아래와 같이 전체 열 합계가 표기 됩니다. 

 

숫자를 단위를 넣어서 더 간결하게 표현 해 보겠습니다. 

Properties   -> Value -> Number Format 를 Number 로 변경하면 단위를 선택 할 수 있습니다. Abbreviate --> On 하면 아래와 같이 자동으로 변동 됩니다. 

 

이번에는 Amount sold 컬럼을 하나더  Grammer Pannel 에 Value 에 추가 합니다.  (% 를 추가적으로 표기하는 작업을 할 예정입니다. ) 

 

Properties  -> edge labels 에서 테이블에 표기된 컬럼에 Display header 를 Custom 으로 선택하고, 아래 내용을 "%" 로 변경합니다. 

 

이제 값을 % 로 변경하기 위해서, 

 

Properties -> Values 에 아래에 Amount sold 에 Display As 를 Percent Of 로 변경합니다. 

Percent Of 옵션이 추가되면, 다시 All Value --> Row Values 를 선택하면 아래와 같이 각 카테코리의 채널별 판매 비중을 확인 할 수 있습니다. 

 

여기까지 1차 완성된 차트 입니다. 여기에 Canvas 전체에 채널별 필터를 아래와 같이 걸어보도록 하겠습니다.

 

Data Panel-> Data -> SH -> CHANNELS --> CHANNEL_DESC를 끌어서 캔버스에 필터에 놓습니다. 

 

이후 내가 원하는 채널하나만 선택(ex. Direct Sales)하면, 아래와 같이 표기됩니다. 

 

AMOUNT_SOLD 는 Direct Sales 채널에 해당하는 값이 정확하게 표기 되지만, 

Grand Total 및 % 는 전체 값을 가져오지 않고, 필터된 ( Direct Sales) 데이터만 가지고 오게 됩니다. 

 

만약 Direct Sales 에 대한 값과 전체에 대한 비중을 함께 보고 싶다면 위와 같이 데이터에 필터를 걸지 않고, 내 계산에서 Using Filter 와 Parameter 기능을 활용 하여 표현 가능합니다. 

 

 

바로 여기에서 대시보드 필터 유형을 이용하면, 간단하게 Parameter 를 구현가능하며, 선택적으로 값 적용이 가능합니다. 

 

기존에 설정했던 캔버스 전체 필터는 지워버리고 필터가 없는 상태로 되돌립니다. 

 

이 상태에서 다시 아래와 같이 

Data Panel-> Data -> SH -> CHANNELS --> CHANNEL_DESC 우측 마우스 클릭을하고, Pick Visualization 을 선택 후, 차트에서 대시보드 필터 차트를 선택 합니다. 

 

하나의 차트 영역으로 대시보드 필터가 생성되며, 아래와 같이 차트를 적절하게 배치 합니다. 

 

마찬가지로 Direct Sales 를 대시보드 필터에서 선택하면, 아래 피봇차트에 자동으로 적용됩니다. 

 

저희는 대시보드 필터를 필터기능으로 사용하지 않고, 변수를 선택하는 기능만을 사용할 예정으로 

아래와 같이 대시보드 필터 적용을 해제 합니다. 

Properties -> Filters 에서 Apply This Filter To 에 아래에 보이는 체크 박스를 해제 합니다. 

 

이 후에는 내가 어떤 값을 선택해도 아래 차트는 영향을 받지 않습니다. 

 

자 이제는 대시보드 선택한 값을 파라메터와 연동 해 보겠습니다. 

 

캔버스에 대시보드 필터에서 값을 선택하는 아래 화살표를 클릭하면, 우측 Selections 옆에 (X)  표시가 있습니다. 

여기를 클릭하고, Creaste Parameter 를 선택합니다. 

 

자동으로 

Data Panel-> Parameters 에 변수가 추가된것을 확인 할 수있습니다. (이 후 edit 가능합니다) 

 

이제 대시보드 필터에서 값을 선택하면, 자동으로 CHANNEL_DESC 에 변수로 저장됩니다. 

 

이제 저 변수를 사용하여, Share(%) 라는 내 계산을 만들어서 전체 세일즈 금액 분에, 해당 채널에 금액을 계산할 예정입니다. 

 

내 계산에서 

분자는 변수로 선택한 채널에 해당하는 값만 가져올 수 있도록  Filter 함수를 사용합니다. 

분모는 전체의 합을 가져올 예정이며, 유연하게 합을 가져오는 Agrregate 함수를 사용합니다. 

 

 

또한 기존에 피봇테이블에 채널별 을 --> 변수 선택한 채널별로 나타내기 위해, 

아래와 같은 내 계산을 추가 합니다. (VAR_CAHNNER_DESC, 변수는 캔버스에서 바로 컬럼으로 사용하지 못하고 예제 처럼  내 계산으로 가져와서 사용해야합니다. )

 

자 이제 준비가 다 되었습니다. 

 

아래와 깉이 Grammer 패널에 Columns 에 기존에 CHANNEL DESC --> VAR_CHANNEL_DESC 로 변경하고, 

Values 에는 Share 를 추가 합니다. 

 

 

 

기존에 % 는 100 로 나오지만, 새로 만든 내 계산에서는 전체 대비 퍼센트가 원하는 형태로 표기 되는 것을 확인 할 수 있습니다. 

 

보기 좋게 % 형태로 표기 해보면, 

아래와 같이 

Properties -> Values 에 Share 에 Number Format 을 Percent 로 변경 합니다. 

 

정리해 보면, 

 

캔버스에 필터를 걸면 데이터 자체에 필터가 걸려서 모든 데이터가 빠지게 됩니다. 

 

전체 데이터에 대한 비율 값을 유지한체 차트에 표현하기 위해서는 보여드린 예시처럼

여러가지 변수와 함수를 사용하여, 처리 할 수 있습니다. 

 

다만 변수에 여러값을 넣는 것을 지원하지 않기 때문에, 마지막으로 대시보드 필터에 다중값을 허용하지 않게 

아래와 같이 변경합니다. (다중 선택으로 파라메터화 해서 여러가지를 중복으로 표현하는 방법은 현재 없습니다) 

 

Properties -> Filter controls 에 CHANNEL_DESC 에 Multi Select 를 Off 로 해야합니다. 

 

간단하게 대시보드 필터 및 파라메터에 활용에 대해서 알아 보았습니다.

 

추가적으로 여기에서나온 파라메터, 대시보드 필터, 함수 들을 응용하여, 다양하게 사용 해 보시기 바랍니다. 

 

감사합니다. 

 

작성자: 장재석(coolguy81@gmail.com) / Cloud Architect
개인 시간을 투자하여 작성된 글로서, 글의 내용에 오류가 있을 수 있으며, 글 속의 의견은 개인적인 의견입니다. 

댓글