Skip to content

Commit 6fdc52e

Browse files
authored
Merge pull request #500 from KxSystems/ee-plot
Improved gg plot png detection
2 parents e43ffe4 + 5255a6a commit 6fdc52e

File tree

2 files changed

+32
-11
lines changed

2 files changed

+32
-11
lines changed

resources/evaluate.q

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -197,11 +197,22 @@
197197
if [result `errored; :result];
198198
/ggplot - start
199199
if[type[result[`result]] = 99h;
200-
if[type[key[[result[`result]]]] = 11h;
201-
if[`output in key result[`result];
202-
if[type[result[`result][`output]] = 99h;
203-
if[`bytes in key result[`result][`output];
204-
result[`base64]:1b; result[`result]: .Q.btoa result[`result][`output][`bytes]; :result]]]]];
200+
attrs: key[[result[`result]]];
201+
if[type[attrs] = 11h;
202+
if[`i_.type in attrs;
203+
if[result[`result][`i_.type] = `.gg.ty;
204+
if[`output in attrs;
205+
output: result[`result][`output];
206+
if[type[output] = 99h;
207+
attrs: key[output];
208+
if[type[attrs] = 11h;
209+
if[`bytes in attrs;
210+
bytes: output[`bytes];
211+
if[type[bytes] = 4h;
212+
if[0x89504E470D0A1A0A ~ bytes til 8;
213+
result[`base64]: 1b;
214+
result[`result]: .Q.btoa bytes;
215+
:result]]]]]]]]]];
205216
/ggplot - end
206217
if [returnFormat ~ "text";
207218
result[`result]: toString result `result];

resources/evaluatePy.q

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -99,13 +99,23 @@
9999
if[result `errored; :result];
100100
/ggplot - start
101101
if[type[result[`result]] = 99h;
102-
if[type[key[[result[`result]]]] = 11h;
103-
if[`output in key result[`result];
104-
if[type[result[`result][`output]] = 99h;
105-
if[`bytes in key result[`result][`output];
106-
result[`base64]:1b; result[`result]: .Q.btoa result[`result][`output][`bytes]; :result]]]]];
102+
attrs: key[[result[`result]]];
103+
if[type[attrs] = 11h;
104+
if[`i_.type in attrs;
105+
if[result[`result][`i_.type] = `.gg.ty;
106+
if[`output in attrs;
107+
output: result[`result][`output];
108+
if[type[output] = 99h;
109+
attrs: key[output];
110+
if[type[attrs] = 11h;
111+
if[`bytes in attrs;
112+
bytes: output[`bytes];
113+
if[type[bytes] = 4h;
114+
if[0x89504E470D0A1A0A ~ bytes til 8;
115+
result[`base64]: 1b;
116+
result[`result]: .Q.btoa bytes;
117+
:result]]]]]]]]]];
107118
/ggplot - end
108-
result[`result]:
109119
$[result`errored;
110120
::;
111121
returnResult;

0 commit comments

Comments
 (0)