{ "cells": [ { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [], "source": [ "(require '[clojupyter.misc.display :as display]\n", " '[hiccup.core :as hiccup]\n", " '[cheshire.core :as cheshire]\n", " '[clojure.repl :refer :all]) ;; to have all the repl goodies" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "data": { "text/html": [ "" ] }, "execution_count": 44, "metadata": {}, "output_type": "execute_result" } ], "source": [ "(display/make-html (hiccup/html [:script {:src \"https://code.highcharts.com/highcharts.js\"}]))" ] }, { "cell_type": "code", "execution_count": 45, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "#'user/plot-highchart" ] }, "execution_count": 45, "metadata": {}, "output_type": "execute_result" } ], "source": [ "(defn plot-highchart [highchart-json]\n", " (let [id (str (java.util.UUID/randomUUID))\n", " code (format \"Highcharts.chart('%s', %s );\" id, (cheshire/encode highchart-json))\n", " html [:div [:div {:id id}]\n", " [:script code]]]\n", " (-> html hiccup/html display/make-html)))" ] }, { "cell_type": "code", "execution_count": 63, "metadata": {}, "outputs": [ { "data": { "text/html": [ "