【问题标题】:WinForms Charting: X Axis Labels - where are they?WinForms 图表:X 轴标签 - 它们在哪里?
【发布时间】:2017-06-01 23:00:27
【问题描述】:

好的....我有一个成功绘制我的系列的 WinForms 图表。但是,X 轴数字标签(不是标题,“数字行”)根本不显示。我没有改变或触摸任何东西!我在另一个 VSExpress 项目中具有完全相同的设置,相同的绘图设置,并且那些轴数字标签显示得很好。这到底是怎么回事???

** Y 轴数字显示得很好,没有问题。只有 X 轴是这样的。

* Y 轴值是压力值 * X 轴值是体积值

我试过了:

  1. 强制“间隔”= 1
  2. 强制轴“Max”/“Min”为特定值
  3. 设置“IntervalType”
  4. 设置“标签样式”

什么都没有改变。零效应。仍然没有向用户指示 X 轴的值正在显示什么。只有一个绘图、一个图表、一个图表区域和一个包含 3 个数据点的系列。在哪里。是。这。轴。数字!??

我的印象是,除非用户篡改了某些东西,否则那些轴标签应该会自动显示(然后由用户决定格式等)....我错了吗?

这是来自设计师的 sn-p:

chartArea2.AxisX.MinorGrid.LineDashStyle = System.Windows.Forms.DataVisualization.Charting.ChartDashStyle.Dash;
            chartArea2.AxisX.MinorTickMark.Enabled = true;
            chartArea2.AxisX.Title = "Cum. Adjusted Inventory (Mcf)";
            chartArea2.AxisX.TitleFont = new System.Drawing.Font("Microsoft Sans Serif", 14F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            chartArea2.AxisX.LabelStyle.Interval = 1;
            chartArea2.AxisX.IntervalType = System.Windows.Forms.DataVisualization.Charting.DateTimeIntervalType.Auto;                  
            chartArea2.AxisY.MinorGrid.LineDashStyle = System.Windows.Forms.DataVisualization.Charting.ChartDashStyle.Dash;
            chartArea2.AxisY.MinorTickMark.Enabled = true;
            chartArea2.AxisY.Title = "Pressure (psia)";
            chartArea2.AxisY.TitleFont = new System.Drawing.Font("Microsoft Sans Serif", 14F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));

~真诚的沮丧, 一个

【问题讨论】:

  • chartArea2.AxisX.LabelStyle.Interval = 1; 根据数据,这可能是个问题。你能给我们看一张图片吗?
  • 如何给你看一张图片?没有“附件”链接....
  • 编辑答案时,顶部有一个图像图标。如果你不能让它工作,你可以将它上传到 imgur 或其他免费的上传服务并发布 url..

标签: c# winforms charts


【解决方案1】:

我找到了问题的答案。

我将这段代码写在一个 .cs 文件中:

 System.Windows.Forms.DataVisualization.Charting.Series newObservationSeries = new System.Windows.Forms.DataVisualization.Charting.Series()
            {
                ChartType = SeriesChartType.Line,
                MarkerStyle = MarkerStyle.Diamond,
                MarkerSize = 5,
                BorderWidth = 2,
                BorderDashStyle = ChartDashStyle.Dash,
                AxisLabel = "Pressure"
            };

最后一行 "AxisLabel = "Pressure"" 破坏了绘图识别正确轴标签的能力。我只是删除了那条线,标签就出现了。这是在我知道如何做之前,我之前尝试创建一个 Axis Title。我只是忘了删除它。
正确的代码是:

 System.Windows.Forms.DataVisualization.Charting.Series newObservationSeries = new System.Windows.Forms.DataVisualization.Charting.Series()
            {
                ChartType = SeriesChartType.Line,
                MarkerStyle = MarkerStyle.Diamond,
                MarkerSize = 5,
                BorderWidth = 2,
                BorderDashStyle = ChartDashStyle.Dash
            };

干杯!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-18
    • 1970-01-01
    • 1970-01-01
    • 2011-05-14
    • 1970-01-01
    • 2015-02-10
    • 1970-01-01
    相关资源
    最近更新 更多