如何创建标记的散点图?

时间:2015-02-23 01:05:20

标签: plot julia scatter-plot gadfly

我想绘制一个带标签的散点图,如下所示, 在牛fly。

Like this example (来源:http://support.sas.com/documentation/cdl/en/statug/63033/HTML/default/images/renda.png

我该怎么做?

散点图很简单:

using Gadfly
X = [1, 2, 2, 3, 3, 3, 4]
Y = [4, 4, 7, 7, 9, 1, 8]
Labels = ["bill", "susan", "megan", "eric", "fran", "alex", "fred"]

plot(x=X, y=Y)

On Option是使用颜色,但这并不是很好,因为传说变得巨大(特别是在不那么简单的例子中)。

plot(x=X,y=Y, color=Labels)

colors

2 个答案:

答案 0 :(得分:7)

虽然@ Oxinabox的答案有效,但是Gadfly的方法是使用Geom.label,例如。

using Gadfly
X = [1, 2, 2, 3, 3, 3, 4]
Y = [4, 4, 7, 7, 9, 1, 8]
Labels = ["bill", "susan", "megan", "eric", "fran", "alex", "fred"]

plot(x=X, y=Y, label=Labels, Geom.point, Geom.label)

Gadfly Plot

这有很多好处,包括智能标签放置以避免标签重叠,或者您可以选择一些易于使用的规则,例如:centeredbelow。另外,它会从主题中选择字体/字体大小。

答案 1 :(得分:2)

您可以使用Compose注释执行此操作。

The Gadfly documentation on that is here.你可能从显示的简单例子中错过了它的真正力量。

Using Compose
plot(x=X, y=Y, Guide.annotation(compose(context(), text(X, Y, Labels))))

With labels