如何将 MSChart 中的 X 轴值更改为月份名称

波斯语

我想更改图表 X 轴值以显示月份的名称

例如:1 => 一月,2 => 二月,等等。

        DataTable dt = new DataTable();
        SqlCommand s = new SqlCommand("ReportMonthly", SCon);
        s.CommandType = CommandType.StoredProcedure;
        s.Parameters.AddWithValue("@Year", Year);
        SCon.Open();
        SqlDataReader dr = s.ExecuteReader();
        dt.Load(dr);
        chtWRMonthly.DataSource = dt;
        chtWRMonthly.Series["Sold"].XValueMember = "Month";
        chtWRMonthly.Series["sRemaining"].XValueMember = "Month";
        chtWRMonthly.Series["Bought"].XValueMember = "Month";
        chtWRMonthly.Series["bRemaining"].XValueMember = "Month";
        chtWRMonthly.Series["Sold"].YValueMembers = "sTAccount";
        chtWRMonthly.Series["sRemaining"].YValueMembers = "sRemaining";
        chtWRMonthly.Series["Bought"].YValueMembers = "bTAccount";
        chtWRMonthly.Series["bRemaining"].YValueMembers = "bRemaining";
        SCon.Close();

以及如何修复图表中月份的名称,然后设置它们的值?

例子:

在此处输入图片说明

塔瓦

不幸的是MSChart,不允许任何真正的表达式,所以我不知道如何将整数直接转换为月份。

有各种解决方法,但您更喜欢哪种方法取决于您。

1)修改DataSource带回DateTimes或..

2)..带回月份字符串。

后者将阻止您使用 x 值。

3)修改DataTable为包含DateTimes这必须在每次检索后发生。

4) 将Axis.Labels完全替换为CustomLabels


以下是解决方法 #3 的示例:它向表中添加一个新列 ('dateX'),并使用根据DateTime.Now.Date 加上列 'c1' 中的整数计算得出的日期填充它y 值位于“c2”列中。

当然,应该使用合适的起始值DateTime,而不是当前日期!

请注意,您需要告诉数据绑定关于 的类型XValueMember也可能是IntervalType!

最后,您可以格式化新列以显示本地化(德语)月份名称..:

if (!DT.Columns.Contains("dateX")) DT.Columns.Add("dateX", typeof(DateTime));

foreach (DataRow row in DT.Rows)
    row.SetField<DateTime>("dateX", DateTime.Now.Date.AddMonths(row.Field<int>("c1")));


Series s = chart1.Series[0];
s.XValueMember = "dateX";
s.XValueType = ChartValueType.DateTime;
s.YValueMembers = "c2";

chart1.DataSource = DT;
chart1.DataBind();

Axis ax = chart1.ChartAreas[0].AxisX;
ax.LabelStyle.Format = "MMMM" ;
ax.IntervalType = DateTimeIntervalType.Months;
ax.Interval = 1;

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在 mschart 中添加多个 x 轴?

如何将Seapair Pairplot中的x和y轴上的值更改为单词?

如何将文件中的bi-us-rds-15september文本值更改为bi-us-rds- +当前日期(以9月作为月份名称)?

R中的y轴标签以及如何将x轴更改为R中的特定增量

如何从图表上的某个点提取X轴上的日期[mschart]

如何将列中的值更改为伪值

如何将值更改为数据框中的字符

如何将x轴上的日期格式化为R中的月份和年份

R-ggplot2将x轴值更改为非对数值

SSRS:如何将一年中的所有月份都显示为图表的 X 轴

如何将CNN图像中的输入形状从40x40更改为13x78?

如何将图形中x轴的第一个标签从0.0修改为0?

如何将数组中的特定 int 值更改为 C 中的 char?

如何在mschart中绘制更粗的线

如何将X轴从普通数字更改为日期和时间格式?

如何将x轴日期时间格式更改为时间和日期的混合?

如何将plt.plot x轴从0更改为实际值?

如何将图形的 x 轴标签更改为 10 的倍数?

如何在莫里斯面积图中的x轴上的字符串中显示月份名称

如何将x.0更改为x?

如何将集合中的布尔值更改为与现有值相反的值?

如何将数据框中的值更改为值列表?

在android中按下按钮后如何将值更改为“活动”?

如果键与值相同,如何将字典中的值更改为“无”

如何将csv文件的列中的所有值更改为特定值php

如何将熊猫数据帧系列中的连续重复值更改为nan或0?

如何将列中的值更改为二进制?

如何将变量访问中包含“电话跟进W”的值更改为“跟进W”?

如何将字典中的嵌套值更改为上级键