File Exchange

image thumbnail

Parallel Coordinate Plots GUI toolbox

version 1.2.0.0 (12.2 MB) by Barnaby
Visualize and manipulate parallel coordinate plots with this GUI. UNIVERSITY OF BRISTOL

1 Download

Updated 01 Oct 2013

View License

Hi, this is my first GUI so I would appreciate feedback on best practice and bugs.

Start by running from pcpnew.m, please read Manual.docx.

Works for 20 or less dimensions and datasets of any number of members (at the cost of speed).

Functionality:
Clusters, groups, envelopes, density plots, filtering, dimension manipulation and many display options.

Cheers, Barney

Cite As

Barnaby (2020). Parallel Coordinate Plots GUI toolbox (https://www.mathworks.com/matlabcentral/fileexchange/43611-parallel-coordinate-plots-gui-toolbox), MATLAB Central File Exchange. Retrieved .

Comments and Ratings (7)

AMITH P C

After running pcpnew.m Iam getting the following errors .I think the problem is with the directory.i didn't understand this directory
my_dir=pwd; %% 2nd line of your code pcpnew.m
Is directory named as pwd .Can somebody help me
Error using load
Unable to read file 'pcpnew.fig': no such file or
directory.

Error in graphics.internal.figfile.FigFile/read (line
25)
hgDataVars = load(filename, '-mat', '-regexp',
'^hg[SO]');

Error in graphics.internal.figfile.FigFile (line 98)
obj.read(file);

Error in
E:\Matlab13\toolbox\matlab\graphics\hgload.p>hgload
(line 59)

Error in openfig (line 72)
[fig, savedvisible] = hgload(filename,
struct('Visible','off'));

Error in gui_mainfcn>local_openfig (line 286)
gui_hFigure = openfig(name, singleton, visible);

Error in gui_mainfcn (line 159)
gui_hFigure = local_openfig(gui_State.gui_Name,
gui_SingletonOpt, gui_Visible);

Error in pcpnew (line 48)
gui_mainfcn(gui_State, varargin{:});

Hi Martin,
You'll need to also click 'update figure'
I've tested this on 2016a, I'm not sure why it's so slow compared to on the earlier version

Is anyone else getting only an empty plot? I load my data, check the "plot raw data", click "create new figure", but all I can see is an empty plot. I've tried 2013b and 2016a Matlab versions.

You Ling

Thanks for the reply. This is certainly helpful.

Barnaby

@You

There is currently no functionality in the code to allow for this. When I

next update it I'll add a checkbox for it, thanks for the idea!

To achieve this you should enter the pcpnew.m file and change line 743 to:

set(misc_axes,'Tag','misc_axes','color','none');

(Probably do that anyway, I'm putting it in the next version)

Then (depending what settings you want this for), after line 774 put:

Max=NaN(1,5);
Min=Max;
for i = 1 : dimnum
Max(i)=max(data_raw(:,i));
Min(i)=min(data_raw(:,i));
g=Min(i):(Max(i)-Min(i))/10:Max(i);
for j = 0 : 10
text(i,j/10,num2str(g(j+1)),'FontSize',10,'parent',h.axes);
%I'm not sure how good a MATLAB function 'text()' is
%Doing ticks as shown in your graph would be more complicated
end
end

This will look pretty crude; for a start I'd delete lines 745 to 753 to get rid of the original y axis labelling. Also it won't be compatible with flipping, setting scale or probably ordering.
Hope that helps!

You Ling

Barnaby, thanks for sharing this toolbox. Is it possible to have multiple y-axes with different sets of ticks on the parallel coordinate plot? For example, something looks like http://mbostock.github.io/d3/talk/20111116/iris-parallel.html
I briefly went through the manual but couldn't find a way to implement that. Thanks!

Updates

1.2.0.0

Updated plotting labelling

MATLAB Release Compatibility
Created with R2012a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Acknowledgements

Inspired by: dlmcell, Kmedoids