以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  如何绘图  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=96083)

--  作者:cglsg5076
--  发布时间:2017/2/13 0:17:00
--  如何绘图
请老师看看,如何绘图。由于每条线的点数不一样,有的是两个点,有的是三个四个点,
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目6.zip

所以不知道如何处理。

--  作者:有点色
--  发布时间:2017/2/13 0:54:00
--  

你的意思是画无数条线?根据xy坐标?

 

Dim Chart As WinForm.Chart \'定义一个图表变量
Dim Series As WinForm.ChartSeries \'定义一个图系变量
Dim t As Table = Tables("表A") \'定义一个变量t引用数据表
Chart = forms("map").Controls("Chart1") \' 引用窗口中的图表
Chart.ChartType = ChartTypeEnum.XYPlot
Chart.SeriesList.Clear() \'清除图表原来的图系
For Each name As String In t.DataTable.GetValues("linename")
   
    Series = Chart.SeriesList.Add() \'增加一个图系
    Series.Text = Name \'设置图系的标题
    Dim drs As List(Of DataRow) = t.DataTable.Select("linename = \'" & name & "\'")
    Series.Length = drs.Count \'设置图系的长度
    For r As Integer = 0 To drs.Count - 1
        Series.X(r) = val(drs(r)("x"))
        Series.Y(r) = val(drs(r)("y"))
    Next
Next
For r As Integer = 0 To t.Rows.Count - 1
   
Next
Chart.LegendVisible = True \'显示图列
Chart.LegendCompass= CompassEnum.South \'图列显示在南方(底端)

 


--  作者:cglsg5076
--  发布时间:2017/2/13 8:50:00
--  
谢谢老师,可以了
--  作者:cglsg5076
--  发布时间:2017/2/13 13:32:00
--  
老师好,我有新的需求。如何将鼠标移到线上或线端,程序就显示线名(Linename)?在右下角能够显示坐标x和y的数据。谢谢
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目6.zip


--  作者:有点色
--  发布时间:2017/2/13 15:01:00
--  

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目6.table


 


--  作者:cglsg5076
--  发布时间:2017/2/13 16:51:00
--  
谢谢老师。
--  作者:cglsg5076
--  发布时间:2017/2/14 21:27:00
--  
老师好,工作中要求在绘图中增加局部放大功能(就是点击鼠标左键拖出一个矩形,然后放大矩形里的图形),因为测线比较多,放在一起太密,
需要局部放大,放大后还要能自由平移图形一边查看测线。
而且还需要能够具有测距功能,因为将来要将海岸线加到图形中以便于方便工作需要。
您看这些功能如何实现。
给您添麻烦了。先谢啦!(还是上边的管理项目6.table

--  作者:有点蓝
--  发布时间:2017/2/14 22:04:00
--  
图表没有这个功能,做不到
--  作者:cglsg5076
--  发布时间:2017/2/16 13:14:00
--  
老师好,请看怎么改下面划线部分的错误。谢谢!

Dim Chart As WinForm.Chart \'定义一个图表变量
Dim Series As WinForm.ChartSeries \'定义一个图系变量
Dim t As Table = Tables("Preplot") \'定义一个变量t引用数据表
Chart =Forms("Configuration").Controls("Chart1") \'Forms("Import").Controls("Chart2")      \' 引用窗口中的图表
messagebox.show("ok")
Chart.ChartType = ChartTypeEnum.XYPlot
Chart.SeriesList.Clear() \'清除图表原来的图系
Dim original,NumberofStreamers As Integer
original=200
Dim selectednodename As String
Series = Chart.SeriesList.Add() \'增加一个图系
Select  Case e.sender.SelectedNode.Nodes.Count

 Case 0
selectednodename=e.sender.SelectedNode.Name

Dim dr As DataRow
Dim hang As String
dr =DataTables("ConfigStreamer").Find("[ProjectName]=\'selectednodename\'")

Dim rr As DataRow=DataTables("ConfigStreamer").DataRows(dr)‘这句编译不通过,请问老师怎么改?
NumberofStreamers=rr("NumberofStreamers")
messagebox.show(NumberofStreamers)
End Select

--  作者:有点色
--  发布时间:2017/2/16 14:02:00
--  
为什么要赋值给rr?直接用dr不行?