Gallery
JS Colorized Scatter
<%@ Page Language="C#" Description="dotnetCHARTING Component" %>
<%@ Register TagPrefix="dnc" Namespace="dotnetCHARTING" Assembly="dotnetCHARTING" %>
<%@ Import Namespace="System.Drawing" %>
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
// This sample domontrates a scatter chart with smartPalette axis line.
Chart.Size = "840x350";
Chart.Title = "Running Events Results";
Chart.TempDirectory = "temp";
Chart.Debug = false;
Chart.DefaultSeries.Type = SeriesType.Marker;
Chart.DefaultElement.Transparency = 30;
Chart.DefaultElement.Marker.Size = 12;
Chart.DefaultElement.Outline.Visible = false;
Chart.LegendBox.Visible = false;
Chart.Mentor = false;
Chart.XAxis.Label.Text = "Participants' year of birth";
//YAxis settings
Chart.YAxis.Label.Text = "Official time";
Chart.YAxis.AlternateGridBackground.Color = Color.Transparent;
Chart.YAxis.DefaultTick.Label.Text = "{%value:date HH:mm:ss}";
Chart.YAxis.Line.Width = 10;
double low = 1580890800000;//2/5/2020 00:20:00 Milliseconds Unix Timestamp
double high = 1580895600000;//2/5/2020 01:40:00 Milliseconds Unix Timestamp
Chart.YAxis.ScaleRange.ValueLow = low;
Chart.YAxis.ScaleRange.ValueHigh = high;
Chart.YAxis.Interval = (high - low) / 4;
// Enable JSCharting
Chart.JS.Enabled = true;
Chart.YAxis.Crosshair = new AxisTick();
Chart.DefaultElement.ToolTip = "Participants year of birth: <b>%xValue</b><br>Official time: <b>{%yValue:date HH:mm:ss}</b>";
Chart.JS.Settings.Add("yAxis.line.color", "smartPalette");
Chart.JS.Settings.Add("yAxis.line.breaks_gap", " 0.01");
DataEngine de = new DataEngine();
de.ChartObject = Chart; // Necessary to view any errors the dataEngine may throw.
de.Data = "./../../data/resources/running-event-results.csv";
de.DataFields = "xdatetime=birth_date,yvalue=official_time";//cvs must have header
SeriesCollection sc = de.GetSeries();
for (int i = 0; i < sc.Count; i++)
{
for (int j = 0; j < sc[i].Elements.Count; j++)
{
DateTimeOffset dto = new DateTimeOffset(2020, 2, 5, sc[i].Elements[j].YDateTime.Hour, sc[i].Elements[j].YDateTime.Minute, sc[i].Elements[j].YDateTime.Second, TimeSpan.Zero).AddHours(+8);//GMT
System.DateTime epochStart = new System.DateTime(1970, 1, 1, 0, 0, 0, System.DateTimeKind.Utc);
sc[i].Elements[j].YValue =(dto.UtcDateTime - epochStart).TotalSeconds*1000;// dto.ToUnixTimeSeconds() * 1000;
sc[i].Elements[j].XValue = sc[i].Elements[j].XDateTime.Year;
sc[i].Elements[j].XDateTime = DateTime.MinValue;
sc[i].Elements[j].YDateTime = DateTime.MinValue;
}
}
Chart.Palette = new Color[] { ColorTranslator.FromHtml("#3e26a8"),
ColorTranslator.FromHtml("#4538d7"),
ColorTranslator.FromHtml("#484ff2"),
ColorTranslator.FromHtml("#4367fd"),
ColorTranslator.FromHtml("#2f80fa"),
ColorTranslator.FromHtml("#2797eb"),
ColorTranslator.FromHtml("#1caadf"),
ColorTranslator.FromHtml("#00b9c7"),
ColorTranslator.FromHtml("#29c3aa"),
ColorTranslator.FromHtml("#48cb86"),
ColorTranslator.FromHtml("#81cc59"),
ColorTranslator.FromHtml("#bbc42f"),
ColorTranslator.FromHtml("#eaba30"),
ColorTranslator.FromHtml("#fec735"),
ColorTranslator.FromHtml("#f5e128"),
ColorTranslator.FromHtml("#f9fb15")};
Chart.SmartPalette = sc[0].GetSmartPalette(ElementValue.YValue, Chart.Palette);
Chart.SeriesCollection.Add(sc);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>.netCHARTING Sample</title>
</head>
<body>
<div align="center">
<dnc:Chart ID="Chart" runat="server" />
</div>
</body>
</html>
<%@ Page Language="vb" Description="dotnetCHARTING Component" %>
<%@ Register TagPrefix="dnc" Namespace="dotnetCHARTING" Assembly="dotnetCHARTING" %>
<%@ Import Namespace="System.Drawing" %>
<script runat="server">
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
' This sample domontrates a scatter chart with smartPalette axis line.
Chart.Size = "840x350"
Chart.Title = "Running Events Results"
Chart.TempDirectory = "temp"
Chart.Debug = False
Chart.DefaultSeries.Type = SeriesType.Marker
Chart.DefaultElement.Transparency = 30
Chart.DefaultElement.Marker.Size = 12
Chart.DefaultElement.Outline.Visible = False
Chart.LegendBox.Visible = False
Chart.Mentor = False
Chart.XAxis.Label.Text = "Participants' year of birth"
'YAxis settings
Chart.YAxis.Label.Text = "Official time"
Chart.YAxis.AlternateGridBackground.Color = Color.Transparent
Chart.YAxis.DefaultTick.Label.Text = "{%value:date HH:mm:ss}"
Chart.YAxis.Line.Width = 10
Dim low As Double = 1580890800000 '2/5/2020 00:20:00 Milliseconds Unix Timestamp
Dim high As Double = 1580895600000 '2/5/2020 01:40:00 Milliseconds Unix Timestamp
Chart.YAxis.ScaleRange.ValueLow = low
Chart.YAxis.ScaleRange.ValueHigh = high
Chart.YAxis.Interval = (high - low) / 4
' Enable JSCharting
Chart.JS.Enabled = True
Chart.YAxis.Crosshair = New AxisTick()
Chart.DefaultElement.ToolTip = "Participants year of birth: <b>%xValue</b><br>Official time: <b>{%yValue:date HH:mm:ss}</b>"
Chart.JS.Settings.Add("yAxis.line.color", "smartPalette")
Chart.JS.Settings.Add("yAxis.line.breaks_gap", " 0.01")
Dim de As DataEngine = New DataEngine()
de.ChartObject = Chart ' Necessary to view any errors the dataEngine may throw.
de.Data = "./../../data/resources/running-event-results.csv"
de.DataFields = "xdatetime=birth_date,yvalue=official_time" 'cvs must have header
Dim sc As SeriesCollection = de.GetSeries()
For i As Integer = 0 To sc.Count - 1
For j As Integer = 0 To sc(i).Elements.Count - 1
Dim dto As DateTimeOffset = New DateTimeOffset(2020, 2, 5, sc(i).Elements(j).YDateTime.Hour, sc(i).Elements(j).YDateTime.Minute, sc(i).Elements(j).YDateTime.Second, TimeSpan.Zero).AddHours(+8) 'GMT
Dim epochStart As System.DateTime = New System.DateTime(1970, 1, 1, 0, 0, 0, System.DateTimeKind.Utc)
sc(i).Elements(j).YValue = (dto.UtcDateTime - epochStart).TotalSeconds * 1000 'dto.ToUnixTimeSeconds() * 1000 'milliseconds
sc(i).Elements(j).XValue = sc(i).Elements(j).XDateTime.Year
sc(i).Elements(j).XDateTime = DateTime.MinValue
sc(i).Elements(j).YDateTime = DateTime.MinValue
Next j
Next i
Chart.Palette = New Color() { ColorTranslator.FromHtml("#3e26a8"), ColorTranslator.FromHtml("#4538d7"), ColorTranslator.FromHtml("#484ff2"), ColorTranslator.FromHtml("#4367fd"), ColorTranslator.FromHtml("#2f80fa"), ColorTranslator.FromHtml("#2797eb"), ColorTranslator.FromHtml("#1caadf"), ColorTranslator.FromHtml("#00b9c7"), ColorTranslator.FromHtml("#29c3aa"), ColorTranslator.FromHtml("#48cb86"), ColorTranslator.FromHtml("#81cc59"), ColorTranslator.FromHtml("#bbc42f"), ColorTranslator.FromHtml("#eaba30"), ColorTranslator.FromHtml("#fec735"), ColorTranslator.FromHtml("#f5e128"), ColorTranslator.FromHtml("#f9fb15")}
Chart.SmartPalette = sc(0).GetSmartPalette(ElementValue.YValue, Chart.Palette)
Chart.SeriesCollection.Add(sc)
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>.netCHARTING Sample</title>
</head>
<body>
<div align="center">
<dnc:Chart ID="Chart" runat="server" />
</div>
</body>
</html>
- Sample FilenameJsColorizedScatter.aspx
- Version10.1
- Uses DatabaseNo