找回密码
 立即注册

QQ登录

只需一步,快速开始

lunaChen

论坛元老

2

主题

13

帖子

4636

积分

论坛元老

积分
4636

活字格认证

最新发帖
lunaChen
论坛元老   /  发表于:2012-12-6 11:28  /   查看:13399  /  回复:16
你好,请问 c1Chart 是否支持DST?
比如说LineChart,3点时向后推送1个小时的情况,这个时候就会存在连个2-3点的时间段,目前的c1Chart会显示成折线,请问有没有办法可以将两个2-3点都在横坐标上显示出来,使其还是一条直线啊?

16 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2012-12-6 12:01:00
沙发
回复 1楼lunaChen的帖子

lunaChen 你好,
我不是很清楚你的 Case。能否把目前情况和期待情况的截图贴出来查看?

折线图显示出来的直线角度取决于绑定在 Chart 上的数据。
回复 使用道具 举报
lunaChen
论坛元老   /  发表于:2012-12-6 13:32:00
板凳
iceman 你好,

目前我们的软件需要支持DST,于是,在某个时间点就需要将时间向前调快一个小时或者向后调慢一个小时。当调慢一个小时时,就会出现一段时间的重复,例如2点到3点之间就是一段重复的区域,目前C1Chart将这段时间的数据显示结果如下:(若图片显示不出,请查看附件)
C:\Documents and Settings\ceelychen\My Documents\DST_LineChart.png

我们期望Chart上不要出现折线,横坐标上显示两个2-3点的时间点就可以解决,但是如何使AxisX能够显示两个2-3点时间段呢? 横坐标是以time为显示类型的(c1Chart.View.AxisX.IsTime = true),由于需求原因我们横坐标必须显示为时间。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-12-6 15:46:00
地板
回复 3楼lunaChen的帖子

lunaChen 你好,
请问你使用的是那个平台的控件?WPF 还是 WinForm?
使用 (c1Chart.View.AxisX.IsTime = true) 方法我们可能无法改变 AxisX 轴标签。
回复 使用道具 举报
lunaChen
论坛元老   /  发表于:2012-12-6 16:07:00
5#
你好,我使用的是 WPF 平台
回复 使用道具 举报
lunaChen
论坛元老   /  发表于:2012-12-6 16:16:00
6#
回复 4楼iceman的帖子

iceman,你好,我使用的平台是WPF
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-12-6 17:19:00
7#
回复 6楼lunaChen的帖子

lunaChen 你好,
使用 IsTime = true 的方法无法实现 2-3 重复显示。可以通过更改数据源的方法实现此功能。
请你参考我的 XAML 代码:

  1.    <Grid>
  2.         <c1:C1Chart Height="254" HorizontalAlignment="Left" Margin="37,32,0,0" Name="c1Chart1" VerticalAlignment="Top" Width="437" ChartType="Line">
  3.             <c1:C1Chart.Data>
  4.                 <c1:ChartData ItemNames="1 2 3 2 3 4">
  5.                     <c1:DataSeries Label="Series 1" RenderMode="Default" Values="11 12 12 12 12 15" />
  6.                 </c1:ChartData>
  7.             </c1:C1Chart.Data>
  8.             <c1:C1ChartLegend DockPanel.Dock="Right" />
  9.         </c1:C1Chart>
  10.     </Grid>
复制代码

截图:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
lunaChen
论坛元老   /  发表于:2012-12-6 17:26:00
8#
回复 7楼iceman的帖子

Dear iceman,

谢谢你的demo。可是我们客户要求X轴必须显示为时间,请问如果不用AxisX.IsTime=true的话,有没有什么办法既可以满足X轴是时间显示,又可以满足重复呀?
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-12-6 17:37:00
9#
回复 8楼lunaChen的帖子

可以通过 “<c1:ChartData ItemNames="1 2 3 2 3 4">
”中的 ItemNames来实现。
X 轴的 Label 怎么显示可以自定义设置。在上图中 X 轴的 Label 就是重复了 2-3 数据段。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
lunaChen
论坛元老   /  发表于:2012-12-6 17:51:00
10#
回复 9楼iceman的帖子

Dear iceman,

是不是可以定义一个label的template了呢? 如何定义X轴的label为显示时间的啊?
请问你知道DST吗? C1Chart针对DST有没有什么特殊的设置呢?如果有的话,怎么设置啊?
我只看到c1Schedule中有一个类叫TimeZonInfo,里边有一些关于Daylight的属性,可是如何用好像涉及得很少呢
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部