如何让import itertools
def scheme(n, k):
keys = [[] for i in range(n)]
for j, comb in enumerate(itertools.combinations(range(n), n-(k-1))):
for i in comb:
keys[i].append(j)
return keys
使用这些数据我尝试了正常的绘图,它运行得很好,但是当我使用ggplot
时我想要更好的可视化,它给了我上面的错误,我该怎么办解决这个问题?
这是谱聚类算法的实现。并且代码运行良好,数据分类正确。我现在只需要表明这一点。
ggplot
答案 0 :(得分:2)
只需将类矩阵转换为数据框,并确保将该数据框存储在另一个对象中。
dataFrame<-data.frame(classMatrix)
现在,在此对象dataFrame
上使用ggplot。
答案 1 :(得分:0)
ggplot泛型函数没有矩阵方法,可能是因为矩阵可能以不同的方式解释以用于绘图目的(例如,在转换为长格式时,应该考虑第一列特别重要吗?)。您可以轻松定义自己的方法(技术上应该写一个强化方法),
m <- cbind(1:10, sin(1:10), cos(1:10))
ggplot.matrix <- function (data = NULL, mapping = aes(), ..., environment = parent.frame())
{
d <- reshape2::melt(as.data.frame(data), 1)
ggplot(d, mapping, environment = environment)
}
ggplot(m, aes(V1,value, colour=variable)) + geom_line()
答案 2 :(得分:-1)
我将input_data转换为数据框并使用
解决了它ggplot(input_data1,aes(x=input_data1$x1, y=input_data1$x2, colour = cl$cluster))+ geom_point(shape=19)