各位帮忙推荐一下Web方式做统计图表的解决方案(不用Crystal),谢了先!

fooboo 2003-08-22 01:42:59
槖P
...全文
64 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
fooboo 2003-08-25
  • 打赏
  • 举报
回复
感谢大家的帮助,几种方案都不错啊!
webdiyer 2003-08-22
  • 打赏
  • 举报
回复
我用DundasChart,功能很强大,甚至有局部放大图表的功能,用OWC你永远做不到。
edobnet 2003-08-22
  • 打赏
  • 举报
回复
有c#的代码吗?贴出来学习一下
danfree 2003-08-22
  • 打赏
  • 举报
回复
我们用的excel装了office xp
excel功能强大,图形报表都很好用
j99616 2003-08-22
  • 打赏
  • 举报
回复
来一段owc的代码吧

Public Class WebForm1
Inherits System.Web.UI.Page
Protected WithEvents Image1 As System.Web.UI.WebControls.Image

#Region " Web Form Designer Generated Code "

'This call is required by the Web Form Designer.
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

End Sub

Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: This method call is required by the Web Form Designer
'Do not modify it using the code editor.
InitializeComponent()
End Sub

#End Region

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'Put user code to initialize the page here

'Dim objConn As New OleDbConnection()
Dim owcChartSpace As OWC.ChartSpace = New OWC.ChartSpace()
Dim owcChart As OWC.WCChart = owcChartSpace.Charts.Add
Dim ConnADO As New ADODB.Connection()
Dim RecordsetADO As New ADODB.Recordset()
'Dim myConnection As New Sqlconnection("server=yang;database=dcss;Trusted_Connection=yes")
Dim connectionString As String
connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Server.MapPath("Grades.mdb")
ConnADO.Open(connectionString)

RecordsetADO.ActiveConnection = ConnADO
RecordsetADO.CursorType = ADODB.CursorTypeEnum.adOpenStatic
RecordsetADO.CursorLocation = ADODB.CursorLocationEnum.adUseClient
Dim strSQL As String
strSQL = "Select ids,city, month, temperature From test order by city,ids"
RecordsetADO.Open(strSQL, ConnADO)
owcChartSpace.DataSource = RecordsetADO

' owcChart.Type = OWC.ChartChartTypeEnum.chChartTypeSmoothLineMarkers
owcChart.Type = OWC.ChartChartTypeEnum.chChartTypeAreaStacked
'owcChart.Type = OWC.ChartChartTypeEnum.chChartTypeSmoothLineStacked
' owcChart.Type = OWC.ChartChartTypeEnum.chChartTypeColumnClustered
'owcChart.Type = OWC.ChartChartTypeEnum.chChartTypeArea
' owcChart.Type = OWC.ChartChartTypeEnum.chChartTypeAreaStacked



owcChart.HasLegend = True
'owcChart.Legend.Interior.Color = "red" '说明文件背景颜色
' owcChart.Interior.Color = "red" '图片外围背景颜色
'owcChart.PlotArea.Interior.Color = "red" '图片背景颜色



owcChart.Legend.Font.Size = "9"

owcChart.SetData(OWC.ChartDimensionsEnum.chDimSeriesNames, 0, "city")

Dim owcSeries As OWC.WCSeries

For Each owcSeries In owcChart.SeriesCollection
owcSeries.SetData(OWC.ChartDimensionsEnum.chDimCategories, 0, "month")
owcSeries.SetData(OWC.ChartDimensionsEnum.chDimValues, 0, "temperature")
Next



'先定义axis为坐标轴集合
Dim axis As OWC.WCAxis

'遍历坐标轴集合

For Each axis In owcChart.Axes

'显示轴标题

axis.HasTitle = True

'先对分类(X)轴进行设置

If axis.Type = OWC.ChartAxisTypeEnum.chCategoryAxis Then

axis.HasTickLabels = False

'显示X轴刻度标签

axis.Position = OWC.ChartAxisPositionEnum.chAxisPositionBottom

'标签的显示位置

axis.Title.Font.Color = "red"

'X轴的标题文字颜色

axis.Title.Font.Size = "16"

'X轴的标题文字大小

axis.Title.Caption = "月份"

'X轴的标题文字内容



Else

'对数值(Y)轴进行设置



axis.MajorGridlines.Line.Color = "999999"

'Y轴主要网络线的颜色

axis.MajorTickMarks = OWC.ChartTickMarkEnum.chTickMarkNone

'不显示Y轴主要刻度标记

axis.HasTickLabels = True

'显示Y轴刻度标签

axis.Title.Font.Color = "green"

'Y轴的标题文字颜色

axis.Title.Font.Size = "16"

'Y轴的标题文字大小

axis.Title.Caption = "平均气温"

'Y轴的标题文字内容

End If

Next




Randomize()
Dim nfilenameSuffix As Integer
Dim sfilenamesuffix As String
nfilenameSuffix = 100000 * Rnd()
sfilenamesuffix = Timer & Rnd()
owcChartSpace.ExportPicture(MapPath("city/tmp_") + sfilenamesuffix + ".gif", "gif", 300, 240)
Image1.ImageUrl = "city/tmp_" + sfilenamesuffix + ".gif"
owcChartSpace.Clear()
RecordsetADO.Close()
ConnADO.Close()
CleanUpGIF(MapPath("city"))
End Sub


Sub CleanUpGIF(ByVal GIFpath)
Dim objFS
Dim objFolder
Dim gif

objFS = Server.CreateObject("Scripting.FileSystemObject")
objFolder = objFS.GetFolder(GIFpath)

'Loop through each file in the GIFpath folder
For Each gif In objFolder.Files
If InStr(gif.Name, ".gif") > 0 And DateDiff("n", gif.DateLastModified, Now) > 1 Then
objFS.DeleteFile(GIFpath & "\" & gif.Name, True)
End If
Next
objFolder = Nothing
objFS = Nothing
End Sub

End Class

whatme168 2003-08-22
  • 打赏
  • 举报
回复
owc 不过你要装office xp

teechar 这个控件真的不错,,不过在网上很难找的下载的,,我现在手里也没有这个控件了..你可以到盗版盘市场看一看有没有买的...
gOODiDEA 2003-08-22
  • 打赏
  • 举报
回复
Dundas Chart for .NET

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧