Owc 繪製曲線

2021-09-08 23:28:26 字數 4110 閱讀 6037

前些日子,由於公司需要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度的區間內,一行中要顯示兩個點,而對一般的顯示器來說,只能按行輸出,即 輸出第一行資訊後,只能向下...