Pending Review
Last Updated: 15 May 2019 14:26 by Scott
Created by: Scott
Comments: 0
Category: HtmlChart
Type: Feature Request
1

Label position dynamic. I'm currently using "InsideBase", but if those values are so small it's not very visible, so i'd like place those on the outside end.

Approved
Last Updated: 01 May 2019 13:59 by ADMIN
For the time being the DateTime object can be set to the AxisCrossingPoint on the client. For example:

ASPX:

		<script>
			function OnLoadHandler(sender, args) {
				var kendoChart = sender.get_kendoWidget();
				var opts = kendoChart.options;
				opts.categoryAxis.axisCrossingValues = [0, new Date("2014, 11, 05, 19:15:00")];
				kendoChart.setOptions(opts);
			}
		</script>
		<telerik:RadHtmlChart runat="server" ID="RadHtmlChart1" Width="600px" Height="400px">
			<ClientEvents OnLoad="OnLoadHandler" />
			<PlotArea>
				<Series>
					<telerik:LineSeries Name="Product 1" DataFieldY="SellQuantity">
					</telerik:LineSeries>
				</Series>
				<XAxis DataLabelsField="SellDate" BaseUnit="Minutes">
					<LabelsAppearance Step="15"></LabelsAppearance>
					<MinorGridLines Visible="false" />
					<AxisCrossingPoints>
						<telerik:AxisCrossingPoint Value="10" />
					</AxisCrossingPoints>
				</XAxis>
				<AdditionalYAxes>
					<telerik:AxisY></telerik:AxisY>
				</AdditionalYAxes>
			</PlotArea>
			<ChartTitle Text="LineSeries"></ChartTitle>
		</telerik:RadHtmlChart>


C#:
	protected void Page_Load(object sender, EventArgs e)
	{
		if (!Page.IsPostBack)
		{
			RadHtmlChart1.DataSource = GetData();
			RadHtmlChart1.DataBind();
		}
	}

	protected DataTable GetData()
	{
		DataTable dt = new DataTable();

		dt.Columns.Add("ID", typeof(int));
		dt.Columns.Add("SellQuantity", typeof(int));
		dt.Columns.Add("SellDate", typeof(DateTime));

		dt.Rows.Add(1, 2, new DateTime(2014, 11, 05, 18, 22, 22));
		dt.Rows.Add(2, 5, new DateTime(2014, 11, 05, 18, 56, 22));
		dt.Rows.Add(3, 6, new DateTime(2014, 11, 05, 19, 14, 22));
		dt.Rows.Add(4, 4, new DateTime(2014, 11, 05, 19, 48, 22));
		dt.Rows.Add(5, 7, new DateTime(2014, 11, 05, 20, 12, 22));

		return dt;
	}
Pending Review
Last Updated: 31 Mar 2019 03:13 by Kasim

Please refer to the ticket for more details.

 

Declined
Last Updated: 21 Mar 2019 05:51 by ADMIN
Hi,

MissingValue set to Gap or Zero doesn't work in RadHtmlChart with ScatterLineSeries.

Interpolation is done instead.

              <telerik:RadHtmlChart runat="server">
                    <PlotArea>
                        <Series>
                            <telerik:ScatterLineSeries Name="Test" DataFieldX="XValue"
                                DataFieldY="YValue" MissingValues="Gap">
                                <SeriesItems>
                                    <telerik:ScatterSeriesItem X="1" Y="8" />
                                    <telerik:ScatterSeriesItem X="2" Y="9" />
                                    <telerik:ScatterSeriesItem X="3" Y="4" />
                                    <telerik:ScatterSeriesItem X="4" Y="6" />
                                    <telerik:ScatterSeriesItem X="5" Y="7" />
                                    <telerik:ScatterSeriesItem X="8" Y="1" />
                                    <telerik:ScatterSeriesItem X="9" Y="5" />
                                    <telerik:ScatterSeriesItem X="10" Y="4" />
                                </SeriesItems>
                            </telerik:ScatterLineSeries>
                        </Series>
                    </PlotArea>
                </telerik:RadHtmlChart>


The workaround described in the following link doesn't work either :
https://feedback.telerik.com/Project/108/Feedback/Details/44399-fix-the-functionality-of-the-missingvalue-property-when-set-to-gap-in-areaserie

Can you please fix this bug ?

Thanks and regards.
Approved
Last Updated: 19 Mar 2019 14:39 by ADMIN
Created by: msigman
Comments: 2
Category: HtmlChart
Type: Feature Request
12
When using custom shapes (circles, triangles, etc) in a RadHtmlChart, the custom shape should be displayed in the legend instead of always a square.  This is because when printing with a black & white printer, the colored squares won't help the reader read the chart, however the shapes would.
Declined
Last Updated: 19 Mar 2019 14:14 by ADMIN
Created by: msigman
Comments: 2
Category: HtmlChart
Type: Feature Request
5
When viewing a line chart with multiple series, the RadHtmlChart automatically changes shapes for each series to make it easy to distinguish, however the shapes are not carried over to the legend.  This means a user printing on a black & white printer will have no way to distinguish the different series (since the shapes are not in the legend).
Approved
Last Updated: 18 Mar 2019 15:39 by ADMIN
Currently the available appearance options of the line in Area, Line and ScatterLine Series are width and background color. Expose additional option for changing the dash type(e.g. dash, dashDot, Dot, etc). For the time being the following workaround can be used:
		<script>
			function pageLoad() {
				var chart = $find("<%=RadHtmlChart1.ClientID%>");
				//DashType: dash, dashDot, dot, longDash, longDashDot, longDashDotDot, solid
				chart._chartObject.options.series[0].dashType = "dot";
				chart.repaint();
			}
		</script>
		<telerik:RadHtmlChart ID="RadHtmlChart1" runat="server" Width="600px" Height="400px">
			<PlotArea>
				<Series>
					<telerik:LineSeries Name="Series 1">
						<SeriesItems>
							<telerik:CategorySeriesItem Y="30" />
							<telerik:CategorySeriesItem Y="10" />
							<telerik:CategorySeriesItem Y="20" />
						</SeriesItems>
					</telerik:LineSeries>
				</Series>
				<XAxis>
					<Items>
						<telerik:AxisItem LabelText="item 1" />
						<telerik:AxisItem LabelText="item 2" />
						<telerik:AxisItem LabelText="item 3" />
					</Items>
				</XAxis>
			</PlotArea>
		</telerik:RadHtmlChart>
Approved
Last Updated: 14 Mar 2019 15:39 by ADMIN
ADMIN
Created by: Danail Vasilev
Comments: 3
Category: HtmlChart
Type: Feature Request
10
Currenlty Series like Bubble, Bar, Column, Donut, Pie and Candlestick do not expose any appearance properties for the Series border. Expose appearance border properties like width, dashtype, color and opacity.

Temporary workaround for managing the border appearance:
Javascript:
	<script language="javascript">
		function pageLoad() {
			var chart = $find("RadHtmlChart1");
			chart._chartObject.options.series[0].border = {
				width: 2,
				color: "black",
				dashType: "dash",
				opacity: 0.2
			}
			chart.repaint();
		}
	</script>

ASPX:
	<telerik:RadHtmlChart ID="RadHtmlChart1" runat="server" Width="600" Height="400">
		<PlotArea>
			<Series>
				<telerik:ColumnSeries>
					<SeriesItems>
						<telerik:CategorySeriesItem Y="30" />
						<telerik:CategorySeriesItem Y="10" />
						<telerik:CategorySeriesItem Y="20" />
					</SeriesItems>
				</telerik:ColumnSeries>
			</Series>
		</PlotArea>
	</telerik:RadHtmlChart>

Approved
Last Updated: 05 Mar 2019 12:36 by ADMIN
The memory usage consumed by RadHtmlChart increase on each AJAX update and is never released.
Video:
Approved
Last Updated: 25 Feb 2019 13:53 by ADMIN
The feature will be similar to Plot Bands (see http://demos.telerik.com/aspnet-ajax/htmlchart/examples/functionality/plot-bands/defaultcs.aspx demo), however, the width of lines will not be dependent on the y-axis scale.
Completed
Last Updated: 22 Feb 2019 15:14 by ADMIN
ADMIN
Created by: Danail Vasilev
Comments: 6
Category: HtmlChart
Type: Feature Request
21
As of R1 2017 you can use the stackTotal property of the labels:
https://docs.telerik.com/kendo-ui/controls/charts/how-to/various/show-stack-total

---
old information

For the time being this can be achieved by creating an additional bar/column series with the following settings:

-series items are set with insignificantly small values (e.g. 0.001)

-the name property of the series is not specified, so that it is not visible in the legend

-the color of the series matches the color of the plot area, so that the series items and the legend of the series are not visible

-clienttemplates for the labels of this series is used in order to sum up the grand total and display it

An example on the described scenario can be found in the http://www.telerik.com/support/kb/aspnet-ajax/chart-%28html5%29/details/displaying-grand-total-in-stacked-series-labels-and-pie-series-legend KB article
Completed
Last Updated: 16 Dec 2018 17:18 by ADMIN
So cool RadHtmlChart navigator should be able to be attached to non-stock layout charts, support multiple databound series and y-axis items other than financial data
Completed
Last Updated: 15 Dec 2018 13:47 by ADMIN
There are two workarounds you can use in the meantime

- Use string representations of the dates instead of actual dates. In this manner you can bind the chart to strings and use a "regular" categorical axis and then the plot bands will work based on the index of the item. In such a case you will need to aggregate the data yourself before passing it to the chart.
- Using the Kendo Chart widget directly, and here is an example of using date objects and adding plot bands dynamically: https://docs.telerik.com/kendo-ui/controls/charts/how-to/appearance/dynamic-plot-bands

Here is also a basic example of fetching the Kendo Chart scripts through a hidden RadHtmlChart so that you can easily use the Kendo Chart widget

<script>
    var myData = [{
        "day": new Date("2014/01/01")
    }, {
        "day": new Date("2014/01/02")
    }, {
        "day": new Date("2014/01/31")
    }];
 
 
    function addPlotBand() {
        $ = $telerik.$;
 
        var start = new Date(2014, 0, 1 + Math.floor(Math.random() * 30));
        var end = new Date(start.getTime() + 1000 * 3600 * 24); // 24 hours after start
 
        var options = {};
 
        options["categoryAxis"] = {
            plotBands: [{
                from: start,
                to: end,
                color: "green"
            }]
        };
 
        $("#chart2").data("kendoChart").setOptions(options);
    }
 
    function pageLoad() {
        $ = $telerik.$;
        $("#chart2").kendoChart({
            dataSource: {
                data: myData
            },
            categoryAxis: {
                type: "date",
                field: "day"
            }
        });
    }
</script>
<telerik:RadButton ID="RadButton1" runat="server" AutoPostBack="false" OnClientClicked="addPlotBand" Text="add plotband" />
<div id="chart2"></div>
<telerik:RadHtmlChart runat="server" ID="chart" Style="visibility: hidden;">
    <PlotArea>
        <XAxis DataLabelsField="day">
        </XAxis>
    </PlotArea>
</telerik:RadHtmlChart>
Completed
Last Updated: 14 Nov 2018 15:28 by Priyanka
Currently there is some space between the PlotArea and the starting/ending points of the LineSeries in RadHtmlChart.
To changethat behavior, so that it is similar to the one in AreaSeries  the justified property (https://docs.telerik.com/kendo-ui/api/javascript/dataviz/ui/chart/configuration/categoryaxis.justified) can be set through the underlying Kendo Chart widget:

        <telerik:RadCodeBlock ID="RadCodeBlock1" runat="server">
            <script>
                function onLoad(sender) {
                    var chart = sender.get_kendoWidget();
                    var opts = chart.options;
                    opts.categoryAxis.justified = true;
                    chart.setOptions(opts);
                    chart.redraw();
                }
            </script>
        </telerik:RadCodeBlock>
        <telerik:RadHtmlChart runat="server" ID="LineChart" Width="800" Height="500" Transitions="true">
            <ClientEvents OnLoad="onLoad" />
            <PlotArea>
                <Series>
                    <telerik:LineSeries Name="Week 15" MissingValues="Interpolate">
                        <SeriesItems>
                            <telerik:CategorySeriesItem Y="15" />
                            <telerik:CategorySeriesItem Y="23" />
                            <telerik:CategorySeriesItem />
                            <telerik:CategorySeriesItem Y="71" />
                            <telerik:CategorySeriesItem Y="93" />
                            <telerik:CategorySeriesItem Y="43" />
                            <telerik:CategorySeriesItem Y="23" />
                        </SeriesItems>
                    </telerik:LineSeries>
                </Series>
            </PlotArea>
        </telerik:RadHtmlChart>
Approved
Last Updated: 09 Nov 2018 16:54 by ADMIN
ADMIN
Created by: Danail Vasilev
Comments: 2
Category: HtmlChart
Type: Feature Request
4
For the time being the property can be set through the underlying Kendo Chart widget. For example:

		<script>
			function OnLoad(chart) {
				var widget = chart.get_kendoWidget();
				//also applies for the minor grid lines - replace majorGridLines with minorGridLines
				//Numeric series
				widget.options.xAxis.majorGridLines.step = 5;
				widget.options.yAxis.majorGridLines.step = 5;
				//Category series
				//widget.options.categoryAxis.majorGridLines.step = 5;
				//widget.options.valueAxis.majorGridLines.step = 5;
				widget.redraw();
			}
		</script>
		<telerik:RadHtmlChart runat="server" ID="BubbleChart" Width="500" Height="400">
			<ClientEvents OnLoad="OnLoad" />
			<ChartTitle Text="Market Share Study">
			</ChartTitle>
			<PlotArea>
				<Appearance>
					<FillStyle BackgroundColor="White"></FillStyle>
				</Appearance>
				<XAxis MinValue="0" MaxValue="100" Step="10">
					<MinorGridLines Visible="false" />
				</XAxis>
				<YAxis MinValue="0" MaxValue="100" Step="10">
					<MinorGridLines Visible="false" />
				</YAxis>
				<Series>
					<telerik:BubbleSeries>
						<Appearance FillStyle-BackgroundColor="#6ab2c9">
						</Appearance>
						<TooltipsAppearance DataFormatString="Percentage of Market Share: {2}%<br /> Number of products: {0}<br /> Sales: ${1}" />
						<SeriesItems>
							<telerik:BubbleSeriesItem Size="3" X="5" Y="55" />
							<telerik:BubbleSeriesItem Size="12" X="14" Y="80" />
							<telerik:BubbleSeriesItem Size="33" X="20" Y="60" />
							<telerik:BubbleSeriesItem Size="10" X="18" Y="24" />
							<telerik:BubbleSeriesItem Size="42" X="22" Y="32" />
						</SeriesItems>
					</telerik:BubbleSeries>
				</Series>
			</PlotArea>
			<Legend>
				<Appearance Position="Right"></Appearance>
			</Legend>
		</telerik:RadHtmlChart>
Completed
Last Updated: 30 Sep 2018 19:30 by Karen
For the time being the following workaround can be used:

JavaScript:

    <script>
        function pageLoad() {
            var chart = $find("<%=RadHtmlChart1.ClientID%>");
            chart._chartObject.options.series[0].missingValues = "Gap";
            chart.repaint();
        }
    </script>
ASPX:

        <telerik:RadHtmlChart ID="RadHtmlChart1" runat="server">
            <PlotArea>
                <Series>
                    <telerik:LineSeries MissingValues="Gap">
                        <SeriesItems>
                            <telerik:CategorySeriesItem Y="30" />
                            <telerik:CategorySeriesItem Y="10" />
                            <telerik:CategorySeriesItem />
                            <telerik:CategorySeriesItem Y="30" />
                        </SeriesItems>
                    </telerik:LineSeries>
                </Series>
            </PlotArea>
        </telerik:RadHtmlChart>
Completed
Last Updated: 13 Sep 2018 12:40 by ADMIN
ADMIN
Created by: Danail Vasilev
Comments: 12
Category: HtmlChart
Type: Feature Request
15
LineBreak is not supported by SVG (more on that - http://www.w3.org/TR/SVG11/text.html#Introduction) and RadHtmlChart uses SVG to render in modern browsers. Add the ability to handle long label text in SVG as well. Currently long strings are getting clipped. 

For the time being the labels can be manually split in separate text elements. For example:
		<script>
			function pageLoad() {
				wrapLabels();
			}
			function wrapLabels() {
				//Find all text elements on the page
				var textElements = document.getElementsByTagName("text");
				//Iterate through the text elements
				for (var i = 0; i < textElements.length; i++) {
					var currTextEl = textElements[i];
					//Set the desired string/symbol that represents the line break
					var lineBreakSymbol = "@LineBreak@";
					if (currTextEl.textContent.indexOf(lineBreakSymbol) != -1) {
						var lines = currTextEl.textContent.split(lineBreakSymbol);
						//Adjust the x and y coordinates for the new text element from the old one
						var textAlignCoefficient = 7;
						var x = currTextEl.attributes.x.textContent * 1 + lines[1].length * textAlignCoefficient;
						var y = currTextEl.attributes.y.textContent * 1 + 20;
						//Obtain the same style for the new text element from the old one
						var style = currTextEl.attributes.style.textContent;
						//Add the new SVG text element
						addSVGTextElement(currTextEl, x, y, style, lines[1]);
						//Adjust the text and the position for the old text element
						currTextEl.textContent = lines[0];
						currTextEl.attributes.x.textContent = currTextEl.attributes.x.textContent * 1 + lines[1].length * textAlignCoefficient;
					}
				}
			}
			function addSVGTextElement(placeHolder, x, y, style, text) {
				var newText = document.createElementNS("http://www.w3.org/2000/svg", "text");

				newText.setAttributeNS(null, "x", x);
				newText.setAttributeNS(null, "y", y);
				newText.setAttributeNS(null, "style", style);

				var textNode = document.createTextNode(text);
				newText.appendChild(textNode);
				placeHolder.parentNode.insertBefore(newText, placeHolder);
			}
		</script>
		<telerik:RadHtmlChart ID="RadHtmlChart1" runat="server" Width="600px" Height="400px">
			<ChartTitle Text="Chart title @LineBreak@ more text in title">
			</ChartTitle>
			<PlotArea>
				<Series>
					<telerik:ColumnSeries Name="Series 1">
						<SeriesItems>
							<telerik:CategorySeriesItem Y="30" />
							<telerik:CategorySeriesItem Y="10" />
							<telerik:CategorySeriesItem Y="20" />
						</SeriesItems>
						<LabelsAppearance>
							<ClientTemplate>
Category is #=category#@LineBreak@Value is: #=value#
							</ClientTemplate>
						</LabelsAppearance>
					</telerik:ColumnSeries>
				</Series>
				<XAxis>
					<Items>
						<telerik:AxisItem LabelText="item 1" />
						<telerik:AxisItem LabelText="item 2" />
						<telerik:AxisItem LabelText="item 3" />
					</Items>
				</XAxis>
			</PlotArea>
		</telerik:RadHtmlChart>
Completed
Last Updated: 06 Sep 2018 11:17 by ADMIN
ADMIN
Created by: Danail Vasilev
Comments: 16
Category: HtmlChart
Type: Feature Request
30
In scenarios where the Series are Column/Bar and Positive and Negative values are present, the XAxis labels are overlapped by the Series themselves. Expose an additional Position property for the axis labels that controls their position to Top/Bottom. 

For the time being you can choose either approach:

1) Use a second x-axis that stores only the labels:

a) Category Axis example:
		<script>
			function BottomXAxisLabels() {
				var chart = $find("<%=RadHtmlChart1.ClientID%>").get_kendoWidget();
				var axis = $telerik.$.extend(true, {}, chart.options.categoryAxis);
				axis.line.visible = false;
				chart.setOptions({ categoryAxis: [{}, axis] });
				chart.options.valueAxis.axisCrossingValues = [0, -99999999999];
				chart.redraw();
			}
		</script>
		<telerik:RadHtmlChart runat="server" ID="RadHtmlChart1" Width="600px" Height="400px">
			<ClientEvents OnLoad="BottomXAxisLabels" />
			<PlotArea>
				<Series>
					<telerik:ColumnSeries Name="Product 1">
						<SeriesItems>
							<telerik:CategorySeriesItem Y="15000" />
							<telerik:CategorySeriesItem Y="-4000" />
							<telerik:CategorySeriesItem Y="10000" />
						</SeriesItems>
					</telerik:ColumnSeries>
				</Series>
				<XAxis>
					<Items>
						<telerik:AxisItem LabelText="1" />
						<telerik:AxisItem LabelText="2" />
						<telerik:AxisItem LabelText="3" />
					</Items>
				</XAxis>
			</PlotArea>
			<ChartTitle Text="Product sales for 2011">
			</ChartTitle>
			<Legend>
				<Appearance Position="Bottom" />
			</Legend>
		</telerik:RadHtmlChart>

b) Numeric axis example:
<script>
			function BottomXAxisLabels() {
				var chart = $find("<%=RadHtmlChart1.ClientID%>").get_kendoWidget();
			    var axis = $telerik.$.extend(true, {}, chart.options.xAxis);
				axis.line.visible = false;
				chart.setOptions({ xAxis: [{ labels: { visible: false }}, axis] });
				chart.options.yAxis.axisCrossingValues = [0, -99999999999];
				chart.redraw();
			}
		</script>
		<telerik:RadHtmlChart runat="server" ID="RadHtmlChart1" Width="600px" Height="400px">
			<ClientEvents OnLoad="BottomXAxisLabels" />
			<PlotArea>
				<Series>
					<telerik:ScatterLineSeries Name="Product 1">
						<SeriesItems>
							<telerik:ScatterSeriesItem Y="15000" X="5" />
							<telerik:ScatterSeriesItem Y="-4000" X="6" />
							<telerik:ScatterSeriesItem Y="10000" X="7"/>
						</SeriesItems>
					</telerik:ScatterLineSeries>
				</Series>
			</PlotArea>
			<ChartTitle Text="Product sales for 2011">
			</ChartTitle>
			<Legend>
				<Appearance Position="Bottom" />
			</Legend>
		</telerik:RadHtmlChart>

2) Use the TextStyle property of the RadHtmlChart , in order to set higher margin for the XAxis labels. For example:

		<telerik:RadHtmlChart ID="RadHtmlChart1" runat="server" Width="600px" Height="400px">
			<PlotArea>
				<Series>
					<telerik:ColumnSeries Name="Product 1">
						<SeriesItems>
							<telerik:CategorySeriesItem Y="15000" />
							<telerik:CategorySeriesItem Y="-4000" />
							<telerik:CategorySeriesItem Y="10000" />
						</SeriesItems>
					</telerik:ColumnSeries>
				</Series>
				<XAxis>
					<LabelsAppearance>
						<TextStyle Margin="135 0 0 0" />
					</LabelsAppearance>
					<Items>
						<telerik:AxisItem LabelText="item1" />
						<telerik:AxisItem LabelText="item2" />
						<telerik:AxisItem LabelText="item3" />
					</Items>
				</XAxis>
			</PlotArea>
		</telerik:RadHtmlChart>

Note: Labels margin and chart's PlotArea height are inversely proportional - the higher the margin is the lower the chart's PlotArea height will be. This resizing is needed, in order for the chart's main dimensions to be kept.
Declined
Last Updated: 09 Jul 2018 23:51 by Mazdak
ADMIN
Created by: Danail Vasilev
Comments: 10
Category: HtmlChart
Type: Feature Request
22
Currently the RadHtmlChart can be bound to a single data source. Add the ability to bind each series to a single data source.
1 2 3 4 5 6