When I set the second axis
Position="Left" , the line chart the line does not appear.
Please help me and give the demo code.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="LineChart2.aspx.cs" Inherits="Project_Demo_Chart_LineChart2" %>
<%@ Register assembly="Ext.Net" namespace="Ext.Net" tagprefix="ext" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<ext:ResourceManager ID="ResourceManager1" runat="server" />
<ext:Panel ID="Panel1"
runat="server"
Title="曲线_双Y轴"
Height="400"
Layout="FitLayout">
<Items>
<ext:Chart
ID="Chart1"
runat="server"
Animate="true">
<Store>
<ext:Store ID="Store1" runat="server">
<Model>
<ext:Model ID="Model1" runat="server">
<Fields>
<ext:ModelField Name="Date" Type="Date" />
<ext:ModelField Name="Data1" />
<ext:ModelField Name="Data2" />
</Fields>
</ext:Model>
</Model>
</ext:Store>
</Store>
<Axes>
<ext:TimeAxis
AxisID="XAxis"
Fields="Date"
Position="Bottom"
DateFormat="dd"
Constrain="true"
FromDate="<%# startTime %>"
ToDate="<%# endTime %>"
AutoDataBind="true" />
<ext:NumericAxis
AxisID="YAxis1"
Fields="Data1"
Position="Left"
Grid="true">
<LabelTitle Fill="#115fa6" />
<Label Fill="#115fa6" />
</ext:NumericAxis>
<ext:NumericAxis
AxisID=" YAxis2"
Fields="Data2"
Position="Left" >
<LabelTitle Fill="#94ae0a" />
<Label Fill="#94ae0a" />
</ext:NumericAxis>
</Axes>
<Series>
<ext:LineSeries
Titles="指标1"
XField="Date"
YField="Data1"
Axes="YAxis1"
Smooth="3">
<HighlightConfig Size="7" Radius="7" />
<MarkerConfig Size="4" Radius="4" StrokeWidth="0" />
<%--鼠标提示--%>
<Tips ID="Tips1" runat="server" TrackMouse="true" Width="100" Height="25">
<Renderer Handler="this.setTitle(Ext.util.Format.date(storeItem.get('Date'), 'y-m-d') + ':' + storeItem.get('Data1'));"></Renderer>
</Tips>
</ext:LineSeries>
<ext:LineSeries
Titles="指标2"
XField="Date"
YField="Data2"
Axes="YAxis2"
Smooth="3">
<HighlightConfig Size="7" Radius="7" />
<MarkerConfig Size="4" Radius="4" StrokeWidth="0" />
<%--鼠标提示--%>
<Tips ID="Tips2" runat="server" TrackMouse="true" Width="100" Height="25">
<Renderer Handler="this.setTitle(Ext.util.Format.date(storeItem.get('Date'), 'y-m-d') + ':' + storeItem.get('Data2'));"></Renderer>
</Tips>
</ext:LineSeries>
</Series>
<LegendConfig Position="Bottom" />
</ext:Chart>
</Items>
</ext:Panel>
</form>
</body>
</html>
.cs code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Ext.Net;
public partial class Project_Demo_Chart_LineChart2 : System.Web.UI.Page
{
public DateTime startTime = new DateTime();
public DateTime endTime = new DateTime();
protected void Page_Load(object sender, EventArgs e)
{
startTime = DateTime.Parse(DateTime.Now.Year + "-" + DateTime.Now.Month + "-01");
endTime = DateTime.Parse(DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.DaysInMonth(DateTime.Now.Year, DateTime.Now.Month));
if (!X.IsAjaxRequest)
{
Store s = this.Chart1.GetStore();
s.DataSource = this.GenerateData(startTime, endTime);
s.DataBind();
}
}
private List<object> GenerateData(DateTime startTime, DateTime endTime)
{
List<object> data = new List<object>();
Random random = new Random();
double p = (random.NextDouble() * 11) + 1;
while (startTime <= endTime)
{
if (startTime < DateTime.Now)
{
data.Add(new
{
Date = startTime,
Data1 = Math.Round(random.NextDouble() * 10),
Data2 = Math.Round(random.NextDouble() * 100)
});
}
else
{
data.Add(new
{
Date = startTime,
Data1 = Math.Round(random.NextDouble() * 10)
});
}
startTime = startTime.AddDays(1);
}
return data;
}
}