如何利用access資料繪製曲線圖 |
答題得分者是:老大仔
|
a80256
一般會員 發表:3 回覆:5 積分:1 註冊:2008-12-17 發送簡訊給我 |
請問一下該如何運用access的資料繪製曲線圖,我設計了兩個edit、一個button、一個chart、一個combobox
combobox中有五個參數選項可選擇 在edit中輸入資料(年月日時分) EX: 200604171500(edit1),200604172000(edit2),在combobox中選取繪製其曲線圖的參數,按下button後,讀取其資料庫數值,並繪製在chart中 chart的 x軸:時間,y軸:數值 附件檔為access數值及表單 編輯記錄
a80256 重新編輯於 2009-04-01 14:33:07, 註解 無‧
|
st33chen
尊榮會員 發表:15 回覆:591 積分:1201 註冊:2005-09-30 發送簡訊給我 |
您好,
看您table欄位為 img_filename, 1,2,3,4,5 實在很怪, 照理 1,2,3,4,5 不可能當成欄位名的才對. 所以我先改成 fld1, fld2, fld3, fld4, fld5 又, 假設 combobox 是讓使用者挑選要畫 fld1, fld2, ..., 或 fld5 的資料 . 1. 拉一個 adoquery1, sql.text 設為 'select mid(img_filename,2) as dt, fld' inttostr(combobox.itemindex 1) as numdata from table1 where mid(img_filename,2) between ''' edit1.text ''' and ''' edit2.text ''''; 2. doubleclick DBCHART(要用 DBCHART, 不是 CHART), 加一個 fastline series 3. 點 series, 點 data source, 點 dataset, 點 adoquery1, 點 x 選 dt, 點 y 選 numdata, 請親自試一下, 我沒實測. --------------------------------------- 我發覺我寫錯了, msaccess 中沒有 substr 應該是 mid (我像老和尚一樣, 工夫學太多都給他忘記了) 取 子字串 在各種 db server, 各種程式語言 間可能寫法都不一樣, 太困擾了 秦始皇的書同文真是灼見啊.
------
IS IT WHAT IT IS 我是 李慕白 請倒著唸. 又想把老話拿出來說, 請用台語發音 : 專家專家全是ROBOT CAR (滷肉腳啦); 都已接手這麼久了, 績效還是那麼爛, 講話還那麼大聲. |
老大仔
尊榮會員 發表:78 回覆:837 積分:1088 註冊:2006-07-06 發送簡訊給我 |
不好意思
借題發問一下... 請問st33chen大大 substr是什麼功用呢? and...欄位用數字應該是ok的 記得以前就因為很懶 所以表單有時暫時都設為數字XD 不過~前提是在Access中能使用 其他的資料庫沒測過 我也不太清楚@@ 另外~ 我自己也照著st33chen大大的解說來試做一次(因為沒用過DBChar) 發現在您的3. 點 series, 點 data source, 點 dataset, 點 adoquery1, 點 x 選 dt, 點 y 選 numdata, 點 adoquery1-->這裡就會掛掉哩@@ 所以我後來就直接用TChar來試做看看 感覺比較好用(是錯覺嗎= =?) 呃~可能我比較笨拙 所以不知道要怎麼弄吧... 以下順便po上程式碼 不過~ 是用TChart而不是DBChart [code delphi] procedure TForm1.Button2Click(Sender: TObject); begin ADODataSet1.Close; ADOConnection1.Connected:=False; ADODataSet1.CommandText:='select img_filename as Data, fld' IntToStr(ComboBox1.ItemIndex 1) ' as numdata from test where img_filename between ''' Edit1.Text ''' and ''' Edit2.Text '''';//st33chen大大提供的SQL語法 ADOConnection1.Connected:=True; ADODataSet1.Open; if ADODataSet1.RecordCount = 0 then ShowMessage('NO Data') else Begin Series1.Marks.Style := smsLabelValue; Series1.Clear; while not ADODataSet1.Eof do Begin Series1.Add(ADODataSet1.Fields[1].AsInteger,ADODataSet1.Fields[0].AsString,clTeeColor); ADODataSet1.Next; End; ADODataSet1.Close; ADOConnection1.Connected:=False; End; end; [/code] |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |