我在SQL Server中有一个表(表名是ex1,它有3列:x,y和size)。
我已从C#连接到此表,并希望在应用程序中将其内容显示为气泡图。我能够绘制x和y轴的值,但无法正确获取y值的气泡大小。
我分享了下面的代码。该代码正确地在x轴上绘制x值,但使用“大小”列的值绘制y值。
private void button1_Click(object sender, EventArgs e)
{
chart4.Series["Series2"].ChartType = SeriesChartType.Bubble;
chart4.Series["Series2"].MarkerStyle = MarkerStyle.Circle;
SqlConnection con0 = new SqlConnection(
"Data Source=4L861280\\sqlexpress;Initial Catalog=vis1;Integrated Security=True;");
SqlDataAdapter ad0 = new SqlDataAdapter("select * from ex1", con0);
DataTable dt0 = new DataTable();
ad0.Fill(dt0);
chart4.DataSource = dt0;
chart4.Series["Series2"].XValueMember = "x";
chart4.Series["Series2"].YValueMembers = "y";
chart4.Series["Series2"].YValueMembers = "size";
}
您需要正确获取用于绑定多个y值的语法。
这是一个例子:
yourSeries.Points.DataBind(yourDataSource, "x", "y,size", "");
关键是要追加的大小的第二y值与逗号到的第一个。在第三个字符串是多余的,你可能要绑定的属性,如AxisLabel
,Tooltip
,Label
,LegendText
,LegendTooltip
和CustomPropertyName
(自定义属性的名称)...
它们以如下所示的命名键值对形式给出: "Tooltip=X,otherproperty=otherfield"
这是更长的讨论,这是令人鼓舞的结果:
可以将相同的规则应用于您使用的语法:
chart4.DataSource = dt0;
chart4.Series["Series2"].XValueMember = "x";
chart4.Series["Series2"].YValueMembers = "y,size";
请注意,这种绑定方式不允许设置额外的服装。有关将数据绑定到的多种方法的完整概述,请参见此处Chart
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句