diff options
| author | ziejd2 | 2021-02-24 14:36:59 -0600 |
|---|---|---|
| committer | ziejd2 | 2021-02-24 14:36:59 -0600 |
| commit | 25b843f6bbacb1937bdb960777b73acbece64115 (patch) | |
| tree | 88645b9d1d8a0eea19d7229555bf8805571bc8b7 /sourcecodes/parameter_learning/drawFigureM.m | |
| parent | 33cedf36248f616aa37d1462c69a4a3058a5d92e (diff) | |
| download | BNW-25b843f6bbacb1937bdb960777b73acbece64115.tar.gz | |
GENENET8 update
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 |
