Pre loader

Tag: Label

Welcome to the SciChart Forums!

  • Please read our Question Asking Guidelines for how to format a good question
  • Some reputation is required to post answers. Get up-voted to avoid the spam filter!
  • We welcome community answers and upvotes. Every Q&A improves SciChart for everyone

WPF Forums | JavaScript Forums | Android Forums | iOS Forums

1 vote
14k views

Hi,

I have a vertical slice modifier. Currently whenever a series has a point near the marker, a kind of tooltip is displayed showing th value of that series at that point. I want to turn off this tooltip functionality (not sure if its called AxisLabel, SeriesValue or something else).

Ive tried setting various properties but I’m still getting the tooltip. Can someone point me in the right direction :

               <s:VerticalSliceModifier  s:SeriesValueModifier.IsSeriesValueModifierEnabled="False" ShowAxisLabels="False" >
                                    <s:VerticalSliceModifier.VerticalLines>
                                        <s:VerticalLineAnnotation 
                                            X1="{Binding ...}" 
                                            YAxisId="DefaultYAxis" 
                                            s:SeriesValueModifier.IsSeriesValueModifierEnabled="False"
                                            ShowLabel="False"
                                            />
                                    </s:VerticalSliceModifier.VerticalLines>
                                </s:VerticalSliceModifier>  
  • F W asked 9 years ago
  • last active 8 years ago
1 vote
15k views

From reading the material on the site I know how to do what I want to do in xaml:

    <Style x:Key="AxisLabelStyle" TargetType="s:DefaultTickLabel">
    <Setter Property="RenderTransform">
        <Setter.Value>
            <RotateTransform Angle="30"/>
        </Setter.Value>
    </Setter>
    <Setter Property="HorizontalAnchorPoint" Value="Left"/>
</Style>

Now however my chart will be using two diffrent x-axis, one numeric and one with date and time. Both axis are defined in code:

            _xAxisNum = new NumericAxis
        {
            ...
        };

        _xAxisDat = new DateTimeAxis
        {
            ...
        };

        InitializeComponent();
        sciChartSurface.XAxis = _xAxisDat;

What code must I add to my x-axes to get the same result as the xaml above accomplishes? Or can I achieve what I want with a LabelProvider?

0 votes
16k views

Hi,

I have a VerticalLineAnnotation that can be dragged over the chart by clicking and dragging on the line itself. (See attached image). The problem is, whenever I put the chart in front of a user, they try to drag by clicking on the label (the blue label with the time in the image).

How can I make this label draggable like the line?

Thanks.

1 vote
0 answers
11k views

Hi,

I’m having the same problem as corvex here: https://www.scichart.com/questions/question/problem-with-the-horizontal-line-annotations-on-vertically-stacked-axes, but I wasn’t sure if replying to his topic (which is older) would get the support team’s attention.

I am basically combining the VerticallyStackedAxes example with the SeriesTooltipsExample. The labels for the annotations are drawn in the wrong place below the chart. The main difference is that I am running 3.42.0.6778 (Runtime version v4.0.30319) and he was running an older version.

Attached is an image and my XAML

<Window.DataContext>

</Window.DataContext>

<Window.Resources>
    <Style x:Key="YAxisStyle" TargetType="s:AxisBase">
        <Setter Property="HorizontalAlignment" Value="Right" />
        <Setter Property="AutoRange" Value="Never" />
        <Setter Property="AxisAlignment" Value="Right" />
        <Setter Property="DrawMinorGridLines" Value="False" />
        <Setter Property="DrawMinorTicks" Value="False" />
        <Setter Property="DrawMajorGridLines" Value="True" />
        <Setter Property="DrawMajorBands" Value="False" />
    </Style>
    <ItemsPanelTemplate x:Key="YAxesPanel">
        <Grid>
            <Grid.RowDefinitions>
                <RowDefinition Height="*" />
                <RowDefinition Height="10" />
                <RowDefinition Height="*" />
            </Grid.RowDefinitions>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="Auto" />
            </Grid.ColumnDefinitions>
        </Grid>
    </ItemsPanelTemplate>
</Window.Resources>

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition />
        <RowDefinition />
        <RowDefinition />
        <RowDefinition />
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition />
        <ColumnDefinition />
        <ColumnDefinition />
        <ColumnDefinition />
    </Grid.ColumnDefinitions>
    <!--  Create the chart surface  -->
    <s:SciChartSurface x:Name="MassChart" Grid.Column="2" Grid.ColumnSpan="2" Grid.RowSpan="2"
                       s:ThemeManager.Theme="Chrome" LeftAxesPanelTemplate="{StaticResource YAxesPanel}" RightAxesPanelTemplate="{StaticResource YAxesPanel}">
        <!--  Create an X Axis with Growby  -->
        <s:SciChartSurface.XAxis>
            <s:NumericAxis GrowBy="0.1, 0.1" TextFormatting="#" ScientificNotation="None" MaxAutoTicks="30"
                           DrawMinorTicks="False" DrawMinorGridLines="False" AutoRange="Never"
                           VisibleRange="0,29" />
        </s:SciChartSurface.XAxis>

        <!--  Create a Y Axis with Growby. Optional bands give a cool look and feel for minimal performance impact  -->
        <s:SciChartSurface.YAxes>
            <s:NumericAxis x:Name="Precut" AxisTitle="Precut" Id="Precut" Style="{StaticResource YAxisStyle}" GrowBy="0.5, 0.5"
                           DrawMajorBands="True" TextFormatting="#.#" VisibleRange="14,22" Grid.Row="0" />
            <s:NumericAxis x:Name="Postcut" AxisTitle="Postcut" Id="Postcut" Style="{StaticResource YAxisStyle}" GrowBy="0.5, 0.5" 
                           DrawMajorBands="True" TextFormatting="#.#" VisibleRange="9.6,14" Grid.Row="2" />
        </s:SciChartSurface.YAxes>

        <s:SciChartSurface.RenderableSeries>
            <s:FastLineRenderableSeries DataSeries="{Binding WaferPrecutMassSeries}" SeriesColor="Blue" YAxisId="Precut" />
            <s:FastLineRenderableSeries DataSeries="{Binding WaferPostcutMassSeries}" SeriesColor="Blue" YAxisId="Postcut" />
        </s:SciChartSurface.RenderableSeries>
        <s:SciChartSurface.Annotations>
            <s:HorizontalLineAnnotation HorizontalAlignment="Stretch"
                                        FontSize="12"
                                        LabelPlacement="Axis"
                                        LabelTextFormatting="0.0"
                                        ShowLabel="True"
                                        Stroke="#E53333"
                                        StrokeThickness="2"
                                        YAxisId="Postcut"
                                        Y1="{Binding LowThreshold, Mode=OneWay}" />
            <s:HorizontalLineAnnotation HorizontalAlignment="Stretch"
                                        FontSize="12"
                                        LabelPlacement="Axis"
                                        LabelTextFormatting="0.0"
                                        ShowLabel="True"
                                        Stroke="#33C833"
                                        StrokeThickness="2"
                                        YAxisId="Postcut"
                                        Y1="{Binding HighThreshold, Mode=OneWay}" />
        </s:SciChartSurface.Annotations>
    </s:SciChartSurface>
</Grid>

I’m afraid I don’t know why the code boxes are nested in the question, but in any case, I think it gets the point across.

0 votes
14k views

I have a few problems that I’m trying to address with y-axis labelling.

  1. I am including a y-axis on the left side of my graph but want the text of the labels to be right-aligned. Each label uses two lines of text. How can I do that?
  2. I want the margin of the text to be a specific width so that I can line up the y-axis of multiple scichart surfaces that are stacked vertically. How can I set each of my scichart surfaces to use a particular margin for the y-axis labelling?
  3. The y-axis label text will wrap when I don’t want it to (see attached image — The text of the label should be “1m \n Left” and I am currently seeing “1m \n Lef \n t”). How do I turn off the wrapping of text on the y-axis?

———-

This is how I am currently implementing the y-axis:

NumericAxis(context).apply {
    drawLabels = true
    axisAlignment = AxisAlignment.Left
    this.labelProvider = labelProvider
    this.tickProvider = tickProvider
    drawMajorBands = false
    drawMajorTicks = false
    drawMinorTicks = false
    drawMajorGridLines = false
    drawMinorGridLines = false
    isLabelCullingEnabled = false
    visibleRange = DoubleRange(
            dataRange.first,
            dataRange.second
    )
    autoRange = AutoRange.Never
    tickLabelStyle = FontStyle(
            TypefaceManager.obtainTypeface(context, CustomTypeface.PROXIMA_NOVA_REG),
            context.resources.getDimension(R.dimen.results_screen_graph_labels_text_size),
            Color.LTGRAY
    )
}
0 votes
10k views

We have Scichart 2.32 version software. In this version, we are using DateTimeAxis format on XAxis. We are showing XAxis Labels in this Text Formatting as “yyyy-MM-dd HH:mm:ss”.
But now, we need to changing the TextFormatting of XLabels.
We need to show time representation of XLabels in Minutes format. We need to show only minute representation during the Time span in the live chart.

How can we achieve this TextFormatting in 2.32 version software? If not, can we achieve this Formatting in the newer versions?

  • gamze asked 5 years ago
  • last active 5 years ago
0 votes
0 answers
9k views

Hello. When I try to add to curve some points with very small numbers:

curve.DataSeries = chartData;
chartData.Append(1, -6.525999992441564E-04);
chartData.Append(2, -6.5259999988724722E-04);
chartData.Append(3, -6.52599999843273E-04);
chartData.Append(4, -6.5259999970558607E-04);
chartData.Append(5, -6.5259999978135147E-04);

y axis not shown labels whatever Text Formatting property for this is. What I’m doing wrong? I noticed if I add points with -3 order of value, axis labels will show.
Surface description:

<sc:SciChartSurface>
    <sc:SciChartSurface.RenderableSeries>
        <sc:FastLineRenderableSeries Name="curve"/>
    </sc:SciChartSurface.RenderableSeries>
    <sc:SciChartSurface.XAxis>
        <sc:NumericAxis/>
    </sc:SciChartSurface.XAxis>
    <sc:SciChartSurface.YAxis>
        <sc:NumericAxis TextFormatting="E3" AutoRange="Always" x:Name="yAxis"/>
    </sc:SciChartSurface.YAxis>
</sc:SciChartSurface> 
0 votes
10k views

Hello,

I have the problem, that sometimes only one label is shown on the X-Axis even when there is space to show some more, than only one.
The property “IsLabelCullingEnabled” would show them all, but than it is ugly if there is not enough space.
So what can I do to have some more Labels shown?

In the Screenshots you can see that with only a few pixels more, more labels are shown, but the could have been also shown with less pixels (Especially Label “1” and “22” could have been shown).

0 votes
10k views

I’m using XyDataSeries<Timespan, double> to plot to my chart.

I want to show elapsed time at chart X-Axis label like below

ex) If Timespan value is 1day 2hour 30min 40sec

Default label style: 02:30:40

Label style I want: 26:30:40

How can I set like that?

Showing 9 results

Try SciChart Today

Start a trial and discover why we are the choice
of demanding developers worldwide

Start TrialCase Studies