diff options
Diffstat (limited to 'sourcecodes/parameter_learning/drawFigureM.m')
| -rw-r--r-- | sourcecodes/parameter_learning/drawFigureM.m | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/sourcecodes/parameter_learning/drawFigureM.m b/sourcecodes/parameter_learning/drawFigureM.m index 820f06dd..4a666ada 100644 --- a/sourcecodes/parameter_learning/drawFigureM.m +++ b/sourcecodes/parameter_learning/drawFigureM.m @@ -1,4 +1,4 @@ -function [] = drawFigureM(nnodes,bnet,labels,filename,cases,stdevs,means,selectvar,selectdata) +function [] = drawFigureM(nnodes,bnet,labels,filename,cases,stdevs,means,selectvar,selectdata,pre) %drawFigureM writes the parameters and data that are needed to draw the %structure of a Bayesian network after adding evidence or intervention %It creates the net_figure_new file after evidence/intervetion. @@ -51,6 +51,11 @@ y = 1 - y; y = y - min(y); [x_dim,y_dim] = canvasSize(nnodes,x,y); +%Open file to write violin plot data +violin_file = strcat(pre,'violin_evidence.txt'); +vfile = fopen(violin_file,'w'); + + %%% The dimensions of the canvas for the javascript code fprintf(fileID,'%i\t%i\t\n',x_dim,y_dim); x = x*x_dim; @@ -141,7 +146,22 @@ for i = 1:nnodes, fprintf(fileID,'%i\t%6.4f\n',j,predict.T(j)); end; else - [x_vals,y_vals] = calcGaussian(predict.mu,predict.Sigma,Amax(i),Amin(i)); + %% The name of the node for the violin plot data + if bnet.node_sizes(i) == 1; + fprintf(vfile,'Data for new node\n'); + fprintf(vfile,'%s\n',labels{i}); + end + + %Get random samples from normals to make violin plots + violin_data = normrnd(predict.mu,sqrt(predict.Sigma),1000,1); + %violin_data = normrnd(s.mean(j),sqrt(s.cov(j)),1000,1); + for k = 1:size(violin_data) + fprintf(vfile,'%6.4f\n',violin_data(k)); + end + + + + [x_vals,y_vals] = calcGaussian(predict.mu,sqrt(predict.Sigma),Amax(i),Amin(i)); %%%For continuous nodes, print x and the pdf of a normal curve. for j = 1:101, %%Undo standardization @@ -160,6 +180,7 @@ for i = 1:nnodes, end fclose(fileID); +fclose(vfile); end |
