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
Barnaby (2021). Parallel Coordinate Plots GUI toolbox (https://www.mathworks.com/matlabcentral/fileexchange/43611-parallel-coordinate-plots-gui-toolbox), MATLAB Central File Exchange. Retrieved .
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Create scripts with code, output, and formatted text in a single executable document.
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.
Thanks for the reply. This is certainly helpful.
@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!
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!