标签: biplot

绘制PCA载荷并在sklearn中的双标图中加载(如R的自动绘图)

我在Rw /中看到了这个教程autoplot.他们绘制了负载和加载标签:

autoplot(prcomp(df), data = iris, colour = 'Species',
         loadings = TRUE, loadings.colour = 'blue',
         loadings.label = TRUE, loadings.label.size = 3)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述 https://cran.r-project.org/web/packages/ggfortify/vignettes/plot_pca.html

我更喜欢Python 3w/matplotlib, scikit-learn, and pandas进行数据分析.但是,我不知道如何添加这些?

你怎么能用这些载体绘制matplotlib

我一直在阅读使用sklearn在PCA中恢复explain_variance_ratio_的功能名称,但尚未弄清楚

这是我如何绘制它 Python

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.datasets import load_iris
from sklearn.preprocessing import StandardScaler
from sklearn import decomposition
import seaborn as sns; sns.set_style("whitegrid", {'axes.grid' : False})

%matplotlib inline
np.random.seed(0)

# Iris …
Run Code Online (Sandbox Code Playgroud)

python pca dimensionality-reduction scikit-learn biplot

10
推荐指数
3
解决办法
1万
查看次数

将图例添加到散点图(PCA)

我是python的新手,发现了这个出色的PCA双线图建议(绘制PCA加载和在sklearn中的双线图中加载(如R的自动绘图))。现在,我尝试为图例中的不同目标添加图例。但是该命令plt.legend()不起作用。

有一个简单的方法吗?例如,来自上面链接的虹膜数据和双标码。

import numpy as np
import matplotlib.pyplot as plt
from sklearn import datasets
from sklearn.decomposition import PCA
import pandas as pd
from sklearn.preprocessing import StandardScaler

iris = datasets.load_iris()
X = iris.data
y = iris.target
#In general a good idea is to scale the data
scaler = StandardScaler()
scaler.fit(X)
X=scaler.transform(X)    

pca = PCA()
x_new = pca.fit_transform(X)

def myplot(score,coeff,labels=None):
    xs = score[:,0]
    ys = score[:,1]
    n = coeff.shape[0]
    scalex = 1.0/(xs.max() - xs.min())
    scaley = 1.0/(ys.max() - …
Run Code Online (Sandbox Code Playgroud)

python matplotlib legend pca biplot

2
推荐指数
1
解决办法
957
查看次数

使用自动绘图绘制 PCA 双标图:修改箭头粗细

我正在使用下面的代码所示的autoplot函数,ggfortify使用iris.pca. 这个例子只有三个变量(因此有 3 个加载),但我的数据集有更多的变量,所以我希望我可以减少箭头的大小以使绘图更具可读性。我认为默认大小是 1 pt,我想把它降到 0.5 之类的东西。虽然有修改加载颜色和标签大小的参数,但我找不到调整箭头粗细的方法。有谁知道如何做到这一点?

library(ggplot2)
library(ggfortify)

df <- iris[c(1, 2, 3, 4)]
iris.pca<-(prcomp(df))

autoplot(iris.pca, data=iris, colour="Species", loadings=TRUE, loadings.colour = "black")+
  scale_colour_manual(values=c("forestgreen","red","blue"))+
  scale_fill_manual(values=c("forestgreen","red","blue"))+
  scale_shape_manual(values=c(25,22,23))+
  theme_bw()
Run Code Online (Sandbox Code Playgroud)

r pca ggfortify biplot

2
推荐指数
1
解决办法
1928
查看次数

使用 ggbiplot 在 R 中可视化具有大量变量的 PCA

我正在尝试可视化包含 87 个变量的 PCA。

prc <-prcomp(df[,1:87], center = TRUE, scale. = TRUE)
ggbiplot(prc, labels = rownames(df[,1:87]), var.axes = TRUE)
Run Code Online (Sandbox Code Playgroud)

当我创建双图时,许多向量相互重叠,导致无法读取标签。我想知道是否有什么方法可以一次只显示一些标签。例如,我认为如果我可以创建几个单独的双图,每个双图仅显示向量上标签的子集,那将会很有用。

这个问题似乎密切相关,但我不知道它是否转换为最新版本的ggbiplot。我也不知道如何修改原来的功能。

r data-visualization ggplot2 ggbiplot biplot

2
推荐指数
1
解决办法
2394
查看次数