跳到主要內容

tableau 連接資料庫的中文編碼問題

Tableau 預設的連線編碼為UTF 8, 大部分時候在連接資料庫是可以正常顯示中文。
少數時候, 遇到較早期的資料庫或配置上不妥當, 就會遇到雖然可以連上資料庫但中文都會是亂碼。
這時候就需要建立一個Tableau data source customization (TDC) file 客製化的資料來源檔,藉由此TDC file 來加入參數,解決編碼問題。

可參考的Knowledge Base 如下:
1. Tableau and ODBC
2. Change the Character Encoding for a Statistical File
目前的實際經驗
在Sybase ASE如果DB編碼非UTF8, 例如CP850就需要設定如下
<?xml version='1.0' encoding='utf-8' ?>
<connection-customization class='sybasease' enabled='true' version='7.10'>
      <vendor name='sybasease' />
      <driver name='sybasease' />
      <customizations>
        <customization name='odbc-connect-string-extras' value='CHARSET=cp850' />
     </customizations>
</connection-customization>

另外一種可能是DB編碼問題解決,但程式端寫入又是以不同的編碼,所以依然無法正確顯示中文字元
經過多次的測試,加了這段參數才解決問題
<?xml version='1.0' encoding='utf-8' ?>
<connection-customization class='mysql' enabled='true' version='7.10'>
      <vendor name='mysql' />
      <driver name='mysql' />
      <customizations>
        <customization name='CAP_ODBC_BIND_SUPPRESS_WIDE_CHAR' value='yes' />
     </customizations>
</connection-customization>

未來如果還有遇到其他狀況,在陸續增加上來!

留言

這個網誌中的熱門文章

[HowTo] 怎樣才能畫出環圈圖(甜甜圈)

首先呢,要有個圓餅圖(Pie Chart) 接下來,在Rows上以滑鼠左鍵雙擊輸入數字"0",輸入後Tableau會建立一個SUM(0)

[HowTo] 地址批次轉換為經緯度

兩個我知道可以批次轉換地址為經緯度的網站 Batch Geocoding 這網站是透過 Google Map API, 因為非商用 google 是有限制的。 實際再用時當一次轉換筆數過多時中間容易會有失敗的現象 , 筆數越多失敗率越高

[HowTo] 用Tableau來繪製雷達圖

雷達圖 (Radar Chart) 經常被使用在需要同時評估多重指標時,例如戰力圖、財務狀態綜合指標、品質管制分析、員工能力分析等等 在 Tableau 最簡單要繪製雷達圖的方式是先將相關指標值轉換為 (x 、 y) 座標標示,在 Tableau 利用 polygon 將指標依序連接起來,最後放上一個雷達圖的底圖。

[HowTo] 關於排序的幾種方式 - 參數控制

排序 (sorting) 在做數據分析時經常會被使用。 在 Tableau 的設計中,簡單的排序只要畫面上點選就可以做到。 但有時候,設計者希望能透過參數的選擇方式,讓閱讀者能夠點選或切換排序依據。 這時候就需要一些稍微進階的作法。 這篇會說明透過參數與計算字段方式來產生動態的排序。 (update at 2020/04/24) 範例一 :  顯示各年度次類別的銷售,並可選擇依據哪個年度排序,且選擇遞增或遞減排列 如何做呢 ? 建立兩個參數,一個是年度,另一個是昇降冪 建立計算字段 計算字段如下,主要是透過一個邏輯判斷僅保留下參數選定的年度的Sales,然後乘上參數(+1/-1)來改變排序方向 最後在 Sub-Category 的排序中選擇以剛剛的計算字段作為排序依據 完成後如下 : 範例二 : 主要維度需要可以選擇 ( 次分類、洲或者區域與產品分組 ) 顯示銷售、利潤與毛利率,並可依據其中一項度量作為排序依據且選擇遞增或遞減排列。 如何做呢 ? 分別建立主欄位、度量、昇降冪的參數 建立計算字段  A.  建立維度的選擇計算字段如下 建立排序用的計算字段B,透過邏輯判斷先選擇度量的參數, 然後乘上參數(+1/-1)來改變排序方向 最後在前面創建的主欄位選擇維度(A)的排序中選擇剛剛的計算字段B 完成後如下 :

[HowTo] 用甜甜圈來呈現目標達成率

如何用環狀圖(甜甜圈)來呈現如下圖的單一個目標達成率的數字呢? 其實方法就是,用兩個數字XDDDD 如果你的數據跟我的Sample一樣已經有目標值(Goal) & 實際值(Sales),就要先算出與目標值的差距數值 如果你的數據已經是達成率,那就做一個 1-[達成率] 的計算字段來代替 接下來一樣是先選擇做一個Pie Chart, 但這時候是將Measure Names放到Color,然後將Measure Values 放到Angle Measure Values 只保留SUM(Sales) & SUM(Gap to Goal)兩項 再來就可以透過前一篇提到的甜甜圈作法,用雙軸的方式產生出一個小圓覆蓋在Pie Chart上面 最後調整顏色 & 格式 &文字,然後需要的話可以將數值顯示在中間 那整個完成後的視圖如下: