Shirley7758 发表于 2015-9-18 14:48:00

C1Chart多轴的tooltip显示问题

最近做一个图表,需要多轴,缩放,可显示tooltip和对数据点的鼠标响应事件,在使用C1Chart的遇到一点问题:
1.X轴为时间轴,但是tooltip设置的时候使用StringFormat = "x={0: d}",语句显示的值为空。
2.后台动态添加多Y轴并绑定数据后,tooltip显示的Y值不准确,但是使用单轴就正常,不知道原因是什么
3.对于给数据点添加鼠标响应,不知道有没有什么好的方法?在sample of chart for wpf样例中有个mouse tracking例子,但是也是会在多轴的时候只追踪到第一个轴。是否还有其他办法能确定到多轴中每个数据点的鼠标响应事件?
demo如下:

Alice 发表于 2015-9-18 17:35:00

回复 1楼Shirley7758的帖子

谢谢反馈和提供的Demo。
1.请参考另一个帖子的回复。http://gcdn.gcpowertools.com.cn/showtopic-18703.html
另外补充下有关绑定的Converter. 将你的代码改成:
StringFormat = "x={0}", //X轴数值不正确,且需要显示为时间格式
                Converter = new DateTimeConverter(),
然后你自定义一个DateTimeConverter从IValueConverter类中继承,然后将double类型的value转成DateTime即可(使用DateTime.FromOADate()方法可以转换)。
2,3的问题我需要校验下才能给你回复。
你可以参考下相关博客:C1Chart for WPF初级教程-多轴图表 :http://blog.gcpowertools.com.cn/post/2015/05/20/C1ChartWPF_MultipleAxis.aspx
http://blog.gcpowertools.com.cn/post/2015/03/28/C1ChartWPF_MarkCode.aspx

Shirley7758 发表于 2015-9-21 10:44:00

回复 2楼Alice的帖子

请问2,3校验好了吗?主要是第2个问题不知道怎么解决,麻烦姐姐了:Z

Alice 发表于 2015-9-21 17:36:00

回复 3楼Shirley7758的帖子

很抱歉还没有找到相关方法。如果有结论会第一时间回复你。
很抱歉给你带来的不便。

Alice 发表于 2015-9-28 15:49:00

回复 1楼Shirley7758的帖子

你好。
第二个和第三个的主要原因是使用标记和标签展示ToolTip,依附的是第一个坐标Y轴。
因此当多轴中的其他轴如果最小值和第一个轴不一致,那么对应的值就会出现问题。
解决的方案可以参考如下的博客:
http://blog.gcpowertools.com.cn/post/2015/09/28/ChartWPF_DateAxis3.aspx

采用PlotElement事件来设置tooltip.

Shirley7758 发表于 2015-10-8 15:45:00

回复 5楼Alice的帖子

但是当数据类型改为线型的时候,鼠标无法准确点击到数据点,因而无法显示tooltip,这点该怎么解决呢

Alice 发表于 2015-10-8 18:33:00

回复 6楼Shirley7758的帖子

基本思路一致,可以根据鼠标点获取到最近的数据点。
你可以参考随机安装示例:
\Documents\ComponentOne Samples\WPF\C1.WPF.Chart\CS\MouseTracking

Alice 发表于 2015-10-28 16:27:00

回复 6楼Shirley7758的帖子

此问题关闭,如果依然有问题请跟帖,如果有新问题请开新帖。
为了给你提供更优质的服务,请对本次服务进行评分。我们会认真对待你提出的宝贵意见,谢谢      http://gcdn.gcpowertools.com.cn/attachment.aspx?attachmentid=10062

您可以关注我们的微信服务号(微信号:GrapeCityDT),帖子有回复时可即时收到提醒,便于您第一时间查看,尽快解决技术问题。关注即可获得300金币用于兑换礼品。
页: [1]
查看完整版本: C1Chart多轴的tooltip显示问题