前端網頁利用HighCharts.js畫圖表的強大,我就不再贅述。
反而今天要提到的是他的弱點:「圖表檔名匯出中文..會變亂碼」。
HighCharts的預設匯出功能在圖表右上角,如下圖↓
![p1 p1](https://imageproxy.pixnet.cc/imgproxy?url=https://pic.pimg.tw/pinylnln/1435061414-11775090_n.png)
圖表的預設檔名都是chart,由於是英文所以匯出都ok。
但若將檔名自定義為中文的話,匯出會變成下圖中的亂碼,於是就多了一個任務要解了。
查了官網中這篇文章有提到,官方並無支援各國語言包或套件,而在匯出時是使用exporting.js裡將圖表以svg的方式POST到官方指定的接口。
想要支援各國語言,就得自行準備一個POST接口,裡面使用UTF-8編碼後response吐出圖表才可以實現匯出中文檔名。
exporting.js其中有一段是:
//url:"http://export.highcharts.com/"
//改替換呼叫自己準備的接口url
url:"/HighChartsExtend/HighCharts"
pinylnln 發表在 痞客邦 留言(0) 人氣()
當一頁網頁的頁面高度高到一定程度時,這時若能出現貼心的「Go to top」的按紐,想必對網站的瀏覽體驗會加分不少。
一、在以下範例展示的是:
1.在特定高度範內,此「Back to top」按紐不會出現。
2.當瀏覽者超出此特定高度範圍之外,按紐才會出現。
二、程式碼部份
1.HTML
<div class="container">
<div class="row">
<div class="span12">
<div style="border:1px dashed #ccc;min-height:1900px;">
pinylnln 發表在 痞客邦 留言(0) 人氣()
如何透過DataTable當作圖表的DataSource畫出圖表
使用Micosoft Chart Control畫圖表,有2種餵值的方式:
1 是靜態的在aspx頁面上給定X軸Y軸的Value,也就是畫出Series的Point。
2 是動態的在C#後置碼中,將Chart圖表DataBinding Enumerable Data,也就是陣列型式的資料。
未來專案會很常使用到DataBinding動態的產生圖表,所以在這裡我要介紹的方法是使用DataBiding至DataTable的寫法。
由於我的專案是用ASP.NET配合MVC架構(非ASP.NET MVC Component),首先先下一段SQL Command取出我要統計的資料。
工作類型統計:
(X軸)工作類型 |
(Y軸)人數 |
無選擇 |
1038 |
全職爸爸/媽媽 |
1010 |
人資 |
231 |
業務 |
643 |
客服 |
326 |
行銷 |
357 |
生產 |
199 |
企劃 |
325 |
接著就要用以上的資料來產生圖表,首先在Default.aspx頁面上加入Chart元件:
<asp:Chart ID="Chart1" runat="server" Height="400px" Width="500px">
<series>
<asp:series ChartArea="chartArea1" Name="series1" ></asp:series>
|
pinylnln 發表在 痞客邦 留言(1) 人氣()