你可以通過(guò)用VB.net控制excel,讓excel生成曲線圖,然后利用excelVBA將圖輸出,最后導(dǎo)入到VB.net就可以了。
成都創(chuàng)新互聯(lián)公司專注于昆玉企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè),購(gòu)物商城網(wǎng)站建設(shè)。昆玉網(wǎng)站建設(shè)公司,為昆玉等地區(qū)提供建站服務(wù)。全流程按需網(wǎng)站策劃,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)
。net ?其實(shí)還是很好繪制圖形的
你可以看下?Graphics ?類(lèi)
Dim d As New Bitmap(Me.Width, Me.Height) ?‘一個(gè)圖片吧
? Dim g As Graphics = Graphics.FromImage(d)’繪制 ?準(zhǔn)備在這個(gè)圖片是進(jìn)行
然后 ?就是你繪制的東西了
線 就是 ??g.DrawLine()
圓 弧度 ?就用 ?g.DrawArc(Pens.Black, New Rectangle(0, 0, 400, 200), 0, 360)
復(fù)雜的就是 ? ? ?g.DrawBezier()
等 ?如果你用的是 VS的 ?編譯 ?上面都有詳細(xì)的參數(shù)說(shuō)明
Dim?d?As?New?Bitmap(Me.Width,?Me.Height)
Dim?g?As?Graphics?=?Graphics.FromImage(d)
g.DrawArc(Pens.Black,?New?Rectangle(0,?0,?200,?200),?0,?360)
g.DrawLine(Pens.Red,?New?Point(0,?0),?New?Point(200,?200))
g.DrawLines(Pens.Green,?New?Point()?{New?Point(0,?0),?New?Point(50,?40),?New?Point(50,?80),?New?Point(90,?70),?New?Point(100,?400)})
g.DrawBezier(Pens.Yellow,?New?Point(0,?100),?New?Point(0,?0),?New?Point(200,?0),?New?Point(200,?200))
g.Dispose()
Me.BackgroundImage?=?d
簡(jiǎn)單說(shuō)下思路吧,具體的代碼可以查資料
首先要會(huì)畫(huà)曲線圖,有三種方法:
1、用mschar控件(vb6的);2、用水晶報(bào)表;3、用word圖表
x軸為時(shí)間,y軸為數(shù)據(jù)
要實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)刷新,只要用 定時(shí)器 定時(shí)刷新曲線圖的數(shù)據(jù)就可以了(x、y的數(shù)據(jù)重寫(xiě))
構(gòu)造Pen的時(shí)候可以指定粗細(xì),如果你指定為1,并且放大了10倍,最后就成10了,所以你指定小點(diǎn)就行了,比如 Dim p As New Pen(Color.Black, 0.01) 最終繪制的線的粗細(xì)不會(huì)小于1