2012-07-19 70 views
2

我使用GeoChart從谷歌可視化API來創建一個包含網站使用信息的動態地圖。由於較大的指標值(8位數字),我需要用逗號分隔這些數字以使地圖更具可讀性。我已經寫了一個函數,爲這些數字添加逗號,但是這會導致API繪製地圖的錯誤。逗號分隔的數據在谷歌可視化API

例如,當逗號分隔數據的3列(國家,訪問次數,唯一訪問者)的1,該列的標籤將在該國工具提示中移除。逗號分隔2列然後導致整個地圖失敗,並出現'Expectcting 2 columns'錯誤。這必須是由於數字字符串中的逗號沒有被轉義,並因此導致JSON數組中的錯誤。我試過插入'\,'而不是常規的逗號無效。任何解決方法或解決方案?

+0

可以包括這些各種錯誤快照? – ajreal 2012-07-30 16:46:52

回答

5

退一步說,我認爲更好的方式來解決的問題是使用在谷歌的可視化NumberFormat類叫google.visualization.NumberFormat格式化你的原始數據。這裏更多的信息:google.visualization.NumberFormat

下面是如何格式化第2列有逗號作爲分組分隔符的例子:

function drawVisualization() { 
    var data = google.visualization.arrayToDataTable([ 
    ['Country', 'Popularity'], 
    ['Germany', 200], 
    ['United States', 300], 
    ['Brazil', 400], 
    ['Canada', 500], 
    ['France', 60000000000000000], 
    ['RU', 700] 
    ]); 

    var formatter = new google.visualization.NumberFormat({pattern:'###,###'}); 
    formatter.format(data, 1); 

    var geochart = new google.visualization.GeoChart(
     document.getElementById('visualization')); 
    geochart.draw(data, {width: 556, height: 347, tooltip: {textStyle: {color: 'blue', fontName: 'Tahoma', fontSize: '15'}}}); 
} 

我用google visualization playground來測試它。

祝你好運!上帝保佑!

更新:修改了geochart.draw行以包含工具提示文本樣式。它將樣式化工具提示中的所有文本。無論如何,我還沒有看到做出精美的穀物定製。下面是詳細信息:Geochart Configuration Options

+0

這看起來非常有希望 - 我會在早上進入辦公室時看看,謝謝。 – 2012-07-30 22:54:05

+0

工作過一種享受 - 謝謝! – 2012-07-31 08:47:44

+0

在另一個說明中,您是否知道在顏色或字體樣式方面對國家/地區popover中的項目進行格式設置的方法? – 2012-07-31 08:56:33

1

根據CSV文件格式的官方規範,包括數據的逗號通過包裹在雙引號中的數據是可能的。

Basic rules and examples

任何字段可以被引用(即,用雙引號包圍字符)。一些字段必須按照以下規則中的規定進行引用。

"1997","Ford","E350" 

帶嵌入逗號的字段必須加引號。

1997,Ford,E350,"Super, luxurious truck"