C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

■86380 / 5階層)  ChartのX軸のタイトル表示
□投稿者/ 魔界の仮面弁士 (1548回)-(2018/01/24(Wed) 10:59:59)
No86376 (mako さん) に返信
> 例えば下記のような15分おきのデータがあったとします。
> 9 12:00 10
>11 12:15 20
「10」が欠落しているのには、何か意図がありますか?


> あと 9:00 9:30 10:00 11:30 12:00 も表示。
09:15 と 09:45 と 10:00 と 12:00 のデータがあって、
09:00 と 09:30 と 11:30 のデータの無いデータ系列の場合、
9:00 / 9:30 / 10:00 には一切出力しないのでしょうか。
それとも前後のデータから想定値を出力するのでしょうか。


Dim ds As New DataSet("mako")

Dim tRaw As New DataTable("raw")
tRaw.Columns.Add("時刻", GetType(Date))
tRaw.Columns.Add("個数", GetType(Integer))
tRaw.Rows.Add(#1/19/2018 8:45#, 30)
tRaw.Rows.Add(#1/19/2018 9:00#, 20)
tRaw.Rows.Add(#1/19/2018 9:15#, 20)
tRaw.Rows.Add(#1/19/2018 9:30#, 5)
tRaw.Rows.Add(#1/19/2018 9:45#, 10)
tRaw.Rows.Add(#1/19/2018 10:00#, 15)
tRaw.Rows.Add(#1/19/2018 11:15#, 5)
tRaw.Rows.Add(#1/19/2018 11:30#, 20)
tRaw.Rows.Add(#1/19/2018 11:45#, 5)
tRaw.Rows.Add(#1/19/2018 12:00#, 10)
tRaw.Rows.Add(#1/19/2018 12:15#, 20)
tRaw.AcceptChanges()
ds.Tables.Add(tRaw)

Chart1.Titles.Clear()
Chart1.ChartAreas.Clear()
Chart1.Legends.Clear()
Chart1.Series.Clear()

Dim c15 As New ChartArea("15分エリア")
Dim c30 As New ChartArea("30分エリア")
Dim c60 As New ChartArea("60分エリア")
Chart1.ChartAreas.Add(c15)
Chart1.ChartAreas.Add(c30)
Chart1.ChartAreas.Add(c60)
c15.AxisX.Interval = 1.0
c30.AxisX.Interval = 1.0#
c60.AxisX.Interval = 1.0R

Dim c15sr1 As New Series("15分系列") With {.ChartArea = c15.Name}
Dim c30sr1 As New Series("30分系列") With {.ChartArea = c30.Name}
Dim c60sr1 As New Series("60分系列") With {.ChartArea = c60.Name}
Chart1.Series.Add(c15sr1)
Chart1.Series.Add(c30sr1)
Chart1.Series.Add(c60sr1)
c15sr1.ChartType = SeriesChartType.Spline
c30sr1.ChartType = SeriesChartType.Column
c60sr1.ChartType = SeriesChartType.Point

Dim q = tRaw.AsEnumerable() _
  .OrderBy(Function(r) r.Field(Of Date)("時刻")) _
  .Select(Function(r, RowIndex) New With {
    Key RowIndex,
    Key r.Field(Of Date)("時刻").Minute,
    Key .X = r.Field(Of Date)("時刻").ToString("HH:mm"),
    Key .Y = r.Field(Of Integer)("個数")
  })
For Each r In q
 If r.RowIndex = 0 OrElse r.Minute = 0 Then
  c15sr1.Points.AddXY(r.X, r.Y)
  c30sr1.Points.AddXY(r.X, r.Y)
  c60sr1.Points.AddXY(r.X, r.Y)
 ElseIf r.Minute = 15 OrElse r.Minute = 45 Then
  c15sr1.Points.AddXY(r.X, r.Y)
 ElseIf r.Minute = 30 Then
  c15sr1.Points.AddXY(r.X, r.Y)
  c30sr1.Points.AddXY(r.X, r.Y)
 End If
Next
編集キー/

前の記事(元になった記事) 次の記事(この記事の返信)
←Re[4]: ChartのX軸のタイトル表示 /mako →Re[6]: ChartのX軸のタイトル表示 /mako
 
上記関連ツリー

ChartのX軸のタイトル表示 / mako (18/01/19(Fri) 14:44) #86333
Re[1]: ChartのX軸のタイトル表示 / shu (18/01/22(Mon) 10:22) #86344
│└ Re[2]: ChartのX軸のタイトル表示 / mako (18/01/22(Mon) 16:44) #86356
│  └ Re[3]: ChartのX軸のタイトル表示 / shu (18/01/22(Mon) 17:57) #86357
│    └ Re[4]: ChartのX軸のタイトル表示 / mako (18/01/24(Wed) 01:01) #86376
│      ├ Re[5]: ChartのX軸のタイトル表示 / shu (18/01/24(Wed) 07:26) #86377
│      │└ Re[6]: ChartのX軸のタイトル表示 / mako (18/01/24(Wed) 08:38) #86378
│      │  └ Re[7]: ChartのX軸のタイトル表示 / shu (18/01/24(Wed) 09:41) #86379
│      │    └ Re[8]: ChartのX軸のタイトル表示 / mako (18/01/25(Thu) 20:35) #86400
│      │      └ Re[9]: ChartのX軸のタイトル表示 / shu (18/01/25(Thu) 23:47) #86401
│      │        └ Re[10]: ChartのX軸のタイトル表示 / mako (18/01/29(Mon) 12:34) #86436
│      │          └ Re[11]: ChartのX軸のタイトル表示 / shu (18/01/29(Mon) 13:17) #86438
│      │            └ Re[12]: ChartのX軸のタイトル表示 / mako (18/01/29(Mon) 16:47) #86440
│      │              └ Re[13]: ChartのX軸のタイトル表示 / shu (18/01/29(Mon) 17:34) #86441
│      └ ChartのX軸のタイトル表示 / 魔界の仮面弁士 (18/01/24(Wed) 10:59) #86380 ←Now
│        └ Re[6]: ChartのX軸のタイトル表示 / mako (18/01/25(Thu) 20:32) #86399
│          └ Re[7]: ChartのX軸のタイトル表示 / 魔界の仮面弁士 (18/01/26(Fri) 10:09) #86402
│            └ Re[8]: ChartのX軸のタイトル表示 / mako (18/01/29(Mon) 12:38) #86437
Re[1]: ChartのX軸のタイトル表示 / mako (18/01/31(Wed) 17:00) #86469
  └ Re[2]: ChartのX軸のタイトル表示 / shu (18/02/01(Thu) 09:44) #86471
    ├ Re[3]: ChartのX軸のタイトル表示 / mako (18/02/01(Thu) 23:31) #86477
    │├ Re[4]: ChartのX軸のタイトル表示 / shu (18/02/02(Fri) 09:04) #86478
    │└ Re[4]: ChartのX軸のタイトル表示 / shu (18/02/02(Fri) 16:30) #86481
    │  └ Re[5]: ChartのX軸のタイトル表示 / mako (18/02/05(Mon) 12:17) #86484
    │    └ Re[6]: ChartのX軸のタイトル表示 / shu (18/02/05(Mon) 12:32) #86485
    │      └ Re[7]: ChartのX軸のタイトル表示 / mako (18/02/07(Wed) 07:57) #86499
    │        └ Re[8]: ChartのX軸のタイトル表示 / shu (18/02/07(Wed) 08:11) #86500
    │          └ Re[9]: ChartのX軸のタイトル表示 / mako (18/02/07(Wed) 16:49) #86516
    │            └ Re[10]: ChartのX軸のタイトル表示 / shu (18/02/07(Wed) 17:03) #86518
    │              └ Re[11]: ChartのX軸のタイトル表示 / mako (18/02/07(Wed) 18:36) #86520
    │                └ Re[12]: ChartのX軸のタイトル表示 / shu (18/02/08(Thu) 08:10) #86522
    │                  └ Re[13]: ChartのX軸のタイトル表示 / mako (18/02/08(Thu) 16:20) #86526
    │                    └ Re[14]: ChartのX軸のタイトル表示 / shu (18/02/08(Thu) 17:23) #86528
    │                      └ Re[15]: ChartのX軸のタイトル表示 / mako (18/02/08(Thu) 23:29) #86530
    │                        └ Re[16]: ChartのX軸のタイトル表示 / shu (18/02/09(Fri) 00:45) #86531
    │                          └ Re[17]: ChartのX軸のタイトル表示 / mako (18/02/09(Fri) 14:47) #86533
    │                            └ Re[18]: ChartのX軸のタイトル表示 / shu (18/02/09(Fri) 16:02) #86534
    │                              ├ Re[19]: ChartのX軸のタイトル表示 / mako (18/02/09(Fri) 22:43) #86538
    │                              └ Re[19]: ChartのX軸のタイトル表示 / mako (18/02/16(Fri) 16:46) #86580
    │                                └ Re[20]: ChartのX軸のタイトル表示 / shu (18/02/18(Sun) 00:14) #86586
    │                                  └New Re[21]: ChartのX軸のタイトル表示 / mako (18/02/18(Sun) 14:33) #86587
    │                                    └New Re[22]: ChartのX軸のタイトル表示 / shu (18/02/18(Sun) 21:01) #86588
    │                                      └New Re[23]: ChartのX軸のタイトル表示 / mako (18/02/19(Mon) 00:08) #86589
    └ Re[3]: ChartのX軸のタイトル表示 / mako (18/02/01(Thu) 23:29) #86476

上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信