前些日子,由於公司需要web曲線的功能,因此這部分工作讓我去實驗、研究。本人也是第一次弄這個東西,通過在網上查資料,自己看幫助,總算弄出了曲線圖形。
效果圖如下:
default.cs.aspx:
protected void page_load(object sender, eventargs e)}
private dataset dataset()
#region 繪製兩個y軸
///
/// 繪製兩個y軸
///
private void charty()
//為x軸指定特定字串,以便顯示資料
string strxdata = string.empty;
foreach (string strdata in monnum)
string strydata = string.empty;
//為y軸指定特定的字串,以便與x軸相對應
foreach (string strvalue in moncount)
string strydata1 = string.empty;
foreach (string strvalue1 in monfee)
//建立chartspace物件來放置圖表
chartspace layspace = new chartspaceclass();
//在chartspace物件中新增圖表
chchart insertchart = layspace.charts.add(0);
//指定繪製圖表的型別。型別可以通過owc.chartcharttypeenum列舉值得到
insertchart.type = chartcharttypeenum.chcharttypeline;//折線圖
= chartcharttypeenum.chcharttypearea;//面積圖
= chartcharttypeenum.chcharttypebarclustered;//條形圖
= chartcharttypeenum.chcharttypecolumnclustered;//柱形圖
= chartcharttypeenum.chcharttypesmoothline; //弧線圖
= chartcharttypeenum.chcharttypepie; // 餅圖
//指定圖表是否需要圖例標註
insertchart.haslegend = true;
insertchart.hastitle = true;//為圖表新增標題
insertchart.title.caption = "2023年本人每個月花銷流水賬";//標題名稱
//為x,y軸新增圖示說明
insertchart.axes[0].hastitle = true;
insertchart.axes[0].title.caption = "月份(月)";//月份
insertchart.axes[1].hastitle = true;
= 200;
insertchart.axes[1].title.caption = "數量(元)";
//顯示y軸刻度標籤
insertchart.axes[1].hasticklabels = true ;
//不顯示y軸主要刻度標記
majortickmarks = charttickmarkenum.chtickmarknone;
//y軸主要網路線
insertchart.axes[1].hasmajorgridlines = false;
insertchart.axes[1].hasautomajorunit = true;
//座標軸上顯示的資料格式設定
insertchart.axes[1].numberformat = "0.00%";
//座標軸刻度寬度
ticklabelspacing =1;
title.position = charttitlepositionenum.chtitlepositionbottom;
//給y軸新增乙個對應的平行軸
insertchart.axes.add(insertchart.axes[1].scaling);
insertchart.axes[2].position = chartaxispositionenum.chaxispositionleft ;
insertchart.axes[2].crossingaxis = insertchart.axes[1];
insertchart.axes[2].hastitle = true;
insertchart.axes[2].title.caption = "金額(元)";
//繪圖區背景顏色
insertchart.plotarea.interior.color = "white";
//圖表工作區邊框顏色
insertchart.border.color = "blue";
//insertchart.
// 新增乙個series系列
insertchart.seriescollection.add(0);
// 設定次座標軸,系列2的累積百分比依據次座標軸填充
insertchart.seriescollection.add(1);
insertchart.seriescollection[1].ungroup(true);
//給定series系列的名字
insertchart.seriescollection[0].setdata(chartdimensionsenum.chdimseriesnames, +(int)chartspecialdatasourcesenum.chdataliteral, strseriesname);
//給定分類
insertchart.seriescollection[0].setdata(chartdimensionsenum.chdimcategories, +(int)chartspecialdatasourcesenum.chdataliteral, strxdata);
//給定值
insertchart.seriescollection[0].setdata(chartdimensionsenum.chdimvalues, (int)chartspecialdatasourcesenum.chdataliteral, strydata);
//曲線的顏色
insertchart.seriescollection[1].line.color = "blue";
//繪製第二條圖形
insertchart.seriescollection[1].setdata(chartdimensionsenum.chdimseriesnames, +(int)chartspecialdatasourcesenum.chdataliteral, strseriesname);
insertchart.seriescollection[1].setdata(chartdimensionsenum.chdimcategories, +(int)chartspecialdatasourcesenum.chdataliteral, strxdata);
insertchart.seriescollection[1].setdata(chartdimensionsenum.chdimvalues, (int)chartspecialdatasourcesenum.chdataliteral, strydata1);
//建立gif檔案的相對路徑.
string strrelativepath = "./image/showdata1.gif";
//把新增到placeholder中,並在頁面上顯示
string strimagetag = "
= strimagetag;
this.placeholder1.controls.add(new literalcontrol(strimagetag));
}#endregion
資料庫設計:
自己隨便建立乙個庫,第一列為x軸資料(日期),第
二、三列為y軸資料,隨便插入幾條記錄就可以了。
請大家指導,如果還有其它什麼好的方法,希望大家能共同交流。
MATLAB曲線繪製
一。二維資料曲線圖 1.1 繪製 單根二維曲線 plot 函式的基本呼叫 格式為 plot x,y 其中x和y為長度相同的向量,分別用於儲存x座標 和y座標資料。例1 1 在0 x 2p區間內,繪製曲線 y 2e 0.5xcos 4 x 程式 如下 x 0 pi 100 2 pi y 2 exp 0...
NURBS曲線繪製
工作需要,最近做非均勻b樣條曲線資料庫建立。為養成良好的工作學習習慣,特此作總結,並希望以後在計算機 學上能有更深的造詣,以激勵自己不斷進步。續前,前段時間終於把nurbs調通,甚是高興!nurbs樣條曲線,這期間經過幾次曲折。第一次是參考網上的資料做出了均勻b樣條曲線,後來拿到客戶那裡去,發現大致...
繪製余弦曲線
繪製余弦曲線 在螢幕上用 顯示0 360度的余弦函式cos x 曲線 問題分析與演算法設計 如果在程式中使用陣列,這個問題十分簡單。但若規定不能使用陣列,問題就變得不容易了。關鍵在於余弦曲線在0 360度的區間內,一行中要顯示兩個點,而對一般的顯示器來說,只能按行輸出,即 輸出第一行資訊後,只能向下...