0

私の Web アプリケーション ASP.NET 4.0 のこの図を見てください。 ここに画像の説明を入力

ご覧のとおり、線の長さは異なります。また、x 軸のエントリが重複しています。

青色のセリエにはデータポイントがありませんが、黄色にはありません。質問 1: x 軸が同じになるように位置合わせするにはどうすればよいですか。現在、これを行っています。そして、線を均等に長くしますか?質問 2:ASP.NET を使用して、グラフをインタラクティブにして、線上にカーソルを置いてその時点からのデータを表示できるようにする方法はありますか?

int amountofrows = Convert.ToInt32(dt.Rows[0]["antal"].ToString());

for (int i = 0; i < amountofrows; i++)
{
    List<string> xvals = new List<string>();
    List<decimal> yvals = new List<decimal>();
    string serieName = dt.Rows[i]["doman_namn"].ToString();
    Chart1.Series.Add(serieName);
    Chart1.Series[i].ChartType = SeriesChartType.Line;

    foreach (DataRow dr in dt.Rows)
    {
        try
        {
            if (String.Equals(serieName, dr["doman_namn"].ToString(), StringComparison.Ordinal))
            {
                xvals.Add(dr["ranking_date"].ToString());
                yvals.Add(Convert.ToDecimal(dr["ranking_position"].ToString()));
            }

        }
        catch (Exception)
        {

            throw new InvalidOperationException("Diagrammet kunde inte ritas upp");
        }
    }
    try
    {
        Chart1.Series[serieName].XValueType = ChartValueType.String;
        Chart1.Series[serieName].YValueType = ChartValueType.Auto;
        Chart1.Series[serieName].Points.DataBindXY(xvals.ToArray(), yvals.ToArray());
        Chart1.DataManipulator.InsertEmptyPoints(1, IntervalType.Days, serieName);
    }
    catch (Exception ex)
    {
        throw new InvalidOperationException(ex.Message);
    }
}

Chart1.DataBind();
Chart1.Visible = true;
4

1 に答える 1

0

これが答えでした!

JBLさん、ご指摘ありがとうございます!

     foreach (System.Web.UI.DataVisualization.Charting.Series serien in Chart1.Series)
     {
                foreach(System.Web.UI.DataVisualization.Charting.DataPoint dataPoint in serien.Points)
                {
                    if (dataPoint.YValues[0] == 0)
                    { 
                       dataPoint.IsEmpty = true;
                    }
                }

                serien.Sort(PointSortOrder.Ascending,sortBy:("X"));
     }
于 2012-12-06T20:16:28.003 に答える