并行坐标的实现?

dis*_*lus 14 matlab plot r coordinates

我想为我的多维结果实现平行坐标.有没有人在matlab或R中实现它的实现?此外,有没有关于用于生成平行坐标的最佳工具的建议?

Vit*_*hKa 21

R解决方案

格子包附带R并包含parallel功能:

 parallel(~iris[1:4] | Species, iris) 
Run Code Online (Sandbox Code Playgroud)

替代文字

ggplot2也是你的朋友:

D <- data.frame(Gain = rnorm(20),  
                Trader = factor(LETTERS[1:4]), 
                Day = factor(rep(1:5, each = 4)))
ggplot(D) + 
  geom_line(aes(x = Trader, y = Gain, group = Day, color = Day))
Run Code Online (Sandbox Code Playgroud)

替代文字

lattice和ggplot需要不同"形状"的输入数据.对于格子,它是矩阵形式,每列是在一个平行坐标上表示的变量.对于ggplot,它是一列(Gains)和变量的单独指标(上面的交易者)./这就是我使用两个不同的例子的原因,而不是在这里弄乱数据重塑/.

如果你需要快速的东西,格子可能适合你.Ggplot需要一些时间投入.


Amr*_*mro 6

如果您希望使用并行坐标,MATLAB在统计工具箱中有一个实现:PARALLELCOORDS.

否则,如果你想自己实现一个,基本版本(没有所有的花里胡哨)应该很容易做到:

load fisheriris            %# load some data
%#meas = zscore(meas);     %# to normalize the attributes
h = plot(meas');            %'# plot
set(gca, 'XTick',1:4, 'XTickLabel',{'SL' 'SW' 'PL' 'PW'}, 'XGrid','on')
ylabel('feature value'), title('Parallel Coordinates')

%# color according to class label
c = grp2idx(species);
clr = lines( numel(c) );
arrayfun(@(k) set(h(c==k),'Color',clr(k,:)), unique(c))
Run Code Online (Sandbox Code Playgroud)

替代文字


Dir*_*tel 6

GGobi已经拥有永恒(正如其前身XGobi已经拥有它).

您可以通过Rrggobi包访问它.作为开源软件,你也可以深入了解它.