以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 图表的bug (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=6053) |
||||
-- 作者:reachtone -- 发布时间:2010/2/28 11:08:00 -- 图表的bug 只要数值列为“高精度小数”,图表就有可能无法正常显示。这是例子:
在上例中,只要A列有空值的,该行图表就无法生成。如果把所有数据列类型改成“双精度小数”,则又可以正常显示。 而在实际项目应用中,表数据全部是通过SQLCrossTableBuilder等统计生成的,这样得到的统计列全部都是高精度小数,就导致此问题! |
||||
-- 作者:czy -- 发布时间:2010/2/28 11:25:00 -- 老怪了,我这里又没问题。 |
||||
-- 作者:reachtone -- 发布时间:2010/2/28 11:45:00 -- 注意看,下图的fff、oooo、tttt三项是空的: 此主题相关图片如下:6.jpg 如果把数值列全部改成“双精度小数”,就可全部正常显示。 |
||||
-- 作者:czy -- 发布时间:2010/2/28 19:42:00 -- 是有此问题,顶一下。 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2010/3/1 9:04:00 -- 收到,我抽空看看 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2010/3/2 12:05:00 -- Dim Chart As WinForm.Chart = e.Form.Controls("Chart1") Dim Series as WinForm.ChartSeries Chart.DataSource = "表A" Chart.ChartType = ChartTypeEnum.Bar Chart.SeriesList.Clear() For each i As Col in Tables("表A").Cols If i.Name <> "xm" Then Series = Chart.SeriesList.Add() Series.Text = i.Name Series.X.DataField = "xm" Series.Y.DataField = i.Name Series.Y.DataType = GetType(Double) End If Next Chart.Inverted = True Chart.Stacked = True Chart.LegendVisible = True Chart.LegendCompass = CompassEnum.East |
||||
-- 作者:reachtone -- 发布时间:2010/3/3 10:31:00 -- 加上Series.Y.DataType就OK了。 帮助中没有,建议将此加上。 |
||||
-- 作者:reachtone -- 发布时间:2010/3/3 16:08:00 -- 还有就是,插入到Excel中的图表,打印出来很不清晰,不知能否给图表设置清晰度。 |
||||
-- 作者:程兴刚 -- 发布时间:2010/3/3 18:01:00 -- 以下是引用reachtone在2010-3-3 10:31:00的发言:
加上Series.Y.DataType就OK了。 帮助中没有,建议将此加上。
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2010/3/4 16:58:00 -- 以下是引用reachtone在2010-3-3 16:08:00的发言:
还有就是,插入到Excel中的图表,打印出来很不清晰,不知能否给图表设置清晰度。
|