ホームページ >バックエンド開発 >C++ >さまざまな範囲のデータをグラフ化するための完全な日付リストを生成するにはどうすればよいですか?

さまざまな範囲のデータをグラフ化するための完全な日付リストを生成するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-10 21:17:121080ブラウズ

How to Generate a Complete Date List for Graphing Data with Varying Ranges?

グラフのさまざまなデータ範囲を持つ日付のリストを生成します

日付軸に複数の系列のグラフをプロットする場合、指定された日付範囲内で異なる系列のデータ範囲が異なることがよくあります。この違いにより、チャートが歪む可能性があります。

この問題を解決するには、日付範囲全体に基づいて日付の完全なリストを生成し、それに応じてデータを入力し、欠損値をゼロで埋めることができます。これを行うには 2 つの方法があります:

1. LINQ を使用します:

<code class="language-csharp">var dates = Enumerable.Range(0, 1 + end.Subtract(start).Days)
          .Select(offset => start.AddDays(offset))
          .ToArray();</code>

2. For ループを使用します:

<code class="language-csharp">var dates = new List<DateTime>();

for (var dt = start; dt <= end; dt = dt.AddDays(1))
{
    dates.Add(dt);
}</code>

欠損値を埋めるには、全範囲内のすべての日付を列挙し、存在する場合はシーケンスから各日付の値を取得します。それ以外の場合は、デフォルト値を使用します。例:

<code class="language-csharp">var paddedSeries = fullDates.ToDictionary(date => date, date => timeSeries.ContainsKey(date) 
                                               ? timeSeries[date] : defaultValue);</code>

以上がさまざまな範囲のデータをグラフ化するための完全な日付リストを生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。