不成比例的气泡图与大小参数

3
我已经创建了一个气泡图,并输入了一些测试值,如下所示:
    this.chart1.Series["blueBubble"].Points.AddXY(2, 3, 6);
    this.chart1.Series["redBubble"].Points.AddXY(1, 0, 7);
    this.chart1.Series["yellowBubble"].Points.AddXY(1, 3, 8);

由于我将特定气泡的大小放入AddXY函数的第三个参数中,所以大小呈现出完全错误的比例。请参见图片:

enter image description here

我该如何将气泡大小更改为正确的比例表示?

你能提供一些关于你使用的框架来创建气泡图的更多信息吗?你是在使用WinForms的bubblechart吗(https://msdn.microsoft.com/en-us/library/dd456658.aspx)? - jstromwick
@JStromwick 抱歉,是的,我正在使用那个。 - csnewb
1个回答

4

这看起来非常奇怪。

我能给出最好的解释是,大小始终从设置的最小值开始,并按比例步进到设置的最大值。

听起来非常奇怪?是的。

以下是 MSDN 上关于 BubbleScaleMaxBubbleScaleMin 的注释:

如果设置为自动,则使用最小大小显示最小绘制的气泡。

如果设置为自动,则使用最大大小显示最大绘制的气泡。

将这些属性设置为除 Auto 以外的任何其他值都很棘手。您可以使用以下代码:

 chart1.Series[0]["BubbleScaleMin"] = "0";

或任何小于您最小尺寸的数字。

或者,如果您喜欢,这里有一个解决方法:添加一个大小为0且具有适当x和y值的透明虚拟点:

int i = this.chart1.Series[0].Points.AddXY(1, 1, 0);
this.chart1.Series[0].Points[i].Color = Color.Transparent;

改前和改后:

图片描述图片描述


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接