C# 具有非线性axisx缩放的图表

C# 具有非线性axisx缩放的图表,c#,charts,axis,scaling,logarithm,C#,Charts,Axis,Scaling,Logarithm,我需要你的帮助。 我有一个图形的问题,我需要创建一个X轴不是线性的图形。 我已经尝试了每一个选项,但我不能,因为我得到了相反的结果 我附上以下图片说明我需要什么 这张图片是来自互联网的一个例子,但它准确地描述了我需要的X轴 如果有人能帮助我,我将非常感激 第二张图片显示了我所拥有的: 图的函数是相同的函数,但结果不同,如您所见 参数为: pstati=105 psheari=90 currentflow=447 这是一个密码 private void PlotChart() { ch

我需要你的帮助。 我有一个图形的问题,我需要创建一个X轴不是线性的图形。 我已经尝试了每一个选项,但我不能,因为我得到了相反的结果 我附上以下图片说明我需要什么 这张图片是来自互联网的一个例子,但它准确地描述了我需要的X轴 如果有人能帮助我,我将非常感激

第二张图片显示了我所拥有的:

图的函数是相同的函数,但结果不同,如您所见

参数为:
pstati=105
psheari=90
currentflow=447
这是一个密码

private void PlotChart()
{
    chart.Series[0].Points.Clear();
    int currentflow = 0, pstati = 0, psheari = 0;
    double ans = 0, hr, hf;
    currentflow = int.Parse(tbAnsFlow.Text);
    psheari = int.Parse(tbPSheari.Text);
    pstati = int.Parse(tbPStatic.Text);

    for (int i = 0; i <= pstati; i++)
    {
        hr = (pstati - i);
        hf = (pstati - psheari);
        ans = hr / hf;
        ans = (Math.Pow(ans, 0.54)) * currentflow;
        chart.Series[0].Points.AddXY(ans, i);
        if (i == int.Parse(tbPSheariToCalc.Text))
        {
            chart.Series[0].Points[i].MarkerStyle = MarkerStyle.Circle;
            chart.Series[0].Points[i].MarkerSize = 8;
            chart.Series[0].Points[i].MarkerColor = Color.Black;
            chart.Series[0].Points[i].LabelAngle = 0;
            chart.Series[0].Points[i].Label = Math.Round(ans).ToString();
            chart.Series[0].Points[i].LabelBorderColor = Color.Black;
            chart.Series[0].Points[i].LabelBackColor = Color.WhiteSmoke;
            tbAnsFlowCalc.Text = Math.Round(ans).ToString();
        }
    }
}
private void PlotChart()
{
chart.Series[0]。Points.Clear();
int currentflow=0,pstati=0,psheari=0;
双ans=0,hr,hf;
currentflow=int.Parse(tbAnsFlow.Text);
psheari=int.Parse(tbPSheari.Text);
pstati=int.Parse(tbPStatic.Text);

对于(int i=0;i设置
AxisX.IsLogarithmic
是正确的方法。它将执行您向我们展示的操作,当然不是相反的操作。我确信这是答案,但它不会给出相同的结果图…可能还有另一个定义我遗漏了?我得到了0.1,1,10100…的跳跃,除了problem是一个函数图,它有很强的值,我直接转到图,现在它没有发生。间隔取决于细节设置。如果你想完全控制间隔并创建不规则间隔的标签,你需要为此编码。首先,感谢你的帮助,我的图的问题不是标签,问题是,对数比例增加了边距,所以第一个时刻的间距是0.9,第二个在我看到的图中已经是9,所以如果边距相等,那么第一个间隔将是最大的,最好的,下一个间隔将在值或类似方面更小,因为他的图片排列相等值,但第一个和第二个边距之间的过渡更大。我希望我足够清楚,很难定义差异。好的,函数是什么?你设置了正确的轴吗。对数基数?如果你的函数有不同的幂,你需要将它从10改为正确的幂!它仍然不会将直线变为曲线,尽管如此。请务必显示函数!设置
AxisX.IsLogarithmic
是正确的方法。它将执行您向我们显示的操作,当然不是相反的操作。我确信这是答案,但它不会给出相同的结果图…可能还有另一个我缺少的定义?我会在一段时间内定期跳转0.1,1,10100问题的另一个方面是函数图具有很强的值,我直接转到了该图,但现在它没有出现。间隔取决于详细设置。如果要完全控制间隔并以不规则间隔创建标签,则需要为此编写代码。首先,请参阅感谢帮助,图mi的问题ne不是标签,问题在于逻辑比例增加了边距,因此第一个时刻的间距是0.9,第二个已经是9,在我看到的图中,边距在下降,因此如果边距相等,那么第一个间距将是最大的,第二个间距将在值或类似方面更小,如他的图片sp读取值相等,但第一个和第二个边距之间的转换更大。我希望我足够清楚,很难定义差异。好的,函数是什么?你设置了正确的轴吗。对数基数?如果你的函数有不同的幂,你需要将它从10改为正确的幂!它仍然不会改变一个straig但是,要将线转换成曲线。所以一定要显示函数!