【问题标题】:Swap x and y axis in a LineSeries chart (DataVisualization.Charting)在 LineSeries 图表中交换 x 轴和 y 轴 (DataVisualization.Charting)
【发布时间】:2014-01-10 01:44:41
【问题描述】:

我想让 y 轴成为独立轴,即将线系列的水平渲染变成垂直渲染。这是我开始使用的代码:

<Window x:Class="Wpf.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:charting="clr-namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualization.Toolkit"
        Title="MainWindow" Height="350" Width="525">
  <Grid>
    <charting:Chart>
      <charting:Chart.Axes>
        <charting:LinearAxis Orientation="X" ShowGridLines="True" Name="xAxis" />
        <charting:LinearAxis Orientation="Y" ShowGridLines="True" Name="yAxis" />
      </charting:Chart.Axes>

      <charting:LineSeries
          Name="lineSeries"
          ItemsSource="{Binding}"
          IndependentValuePath="Indep"
          DependentValuePath="Dep">
      </charting:LineSeries>
    </charting:Chart>
  </Grid>
</Window>

首先我尝试添加

<charting:LineSeries.IndependentAxis>
    <charting:LinearAxis Orientation="Y" />
</charting:LineSeries.IndependentAxis>

<charting:LineSeries.DependentRangeAxis>
    <charting:LinearAxis Orientation="X" />
</charting:LineSeries.DependentRangeAxis>

这会导致System.InvalidOperationException 带有一条消息

分配的独立轴不能使用。这可能是由于轴的方向属性未设置。

但是,当在上面的 sn-p 中交换 "X""Y" 的值时,也不例外,一切正常,当然除了轴的方向不是我想要的那样。

接下来我尝试以编程方式进行:

lineSeries.IndependentAxis = yAxis;
lineSeries.DependentRangeAxis = xAxis;

这给了我同样的例外。同样,在上述语句中交换xAxisyAxis 时,也不例外。

知道如何得到我想要的吗?

【问题讨论】:

    标签: .net silverlight wpftoolkit datavisualization.toolkit


    【解决方案1】:

    在轴交换方面没有取得任何进展,我尝试了 通用 WPF 旋转控件方式。就像在&lt;charting:Chart&gt; 元素下添加以下内容一样简单,并且可以正常工作:

    <charting:Chart.LayoutTransform>
      <RotateTransform CenterX="0.5" CenterY="0.5" Angle="90"/>
    </charting:Chart.LayoutTransform>
    

    除了如果你真的只想交换依赖/独立轴,RotateTransform 类似于大锤。因为那时您必须调整轴的位置并将它们旋转 -90 度。但是,这一切都是可行的,并且缺乏更直接的解决方案,我决定采用此方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-05-23
      • 2022-01-24
      • 2022-09-28
      • 1970-01-01
      • 2016-05-01
      • 2014-12-07
      • 1970-01-01
      相关资源
      最近更新 更多