{"_id":"vue-wordcloud","_rev":"2942022","name":"vue-wordcloud","description":"A Vue.js Word Cloud component","dist-tags":{"latest":"1.1.1"},"maintainers":[{"name":"feifang","email":"karen.feifang@gmail.com"}],"time":{"modified":"2023-04-17T03:48:28.000Z","created":"2017-08-12T06:32:56.620Z","1.1.1":"2018-11-25T13:20:52.608Z","1.1.0":"2018-11-25T13:05:49.139Z","1.0.2":"2017-08-12T08:01:46.017Z","1.0.1":"2017-08-12T06:52:31.234Z","1.0.0":"2017-08-12T06:32:56.620Z"},"users":{},"author":{"name":"fei.fang","email":"karen.feifang@gmail.com"},"versions":{"1.1.1":{"name":"vue-wordcloud","description":"A Vue.js Word Cloud component","version":"1.1.1","license":"MIT","author":{"name":"fei.fang","email":"karen.feifang@gmail.com"},"private":false,"main":"dist/word-cloud.js","scripts":{"dev":"cross-env NODE_ENV=development webpack-dev-server --open --hot","build":"cross-env NODE_ENV=production webpack --progress --hide-modules"},"dependencies":{"d3":"^4.10.0","d3-cloud":"^1.2.4","d3-scale-chromatic":"^1.3.3","vue":"^2.3.3","vue-resize-directive":"^1.0.0"},"devDependencies":{"babel-core":"^6.0.0","babel-eslint":"7.1.1","babel-loader":"^6.0.0","babel-plugin-transform-runtime":"^6.15.0","babel-preset-env":"^1.7.0","babel-runtime":"^6.11.6","cross-env":"^3.0.0","css-loader":"^0.25.0","eslint":"3.14.1","eslint-config-airbnb-base":"11.0.1","eslint-friendly-formatter":"2.0.7","eslint-import-resolver-webpack":"0.8.1","eslint-loader":"1.6.1","eslint-plugin-html":"2.0.0","eslint-plugin-import":"2.2.0","file-loader":"^0.9.0","uglifyjs-webpack-plugin":"^1.1.6","vue-loader":"^12.1.0","vue-template-compiler":"^2.3.3","webpack":"3.10.0","webpack-dev-server":"^3.1.10"},"gitHead":"140e821aa3b2d2f8f9f3761bb84f2384ec9df26d","_id":"vue-wordcloud@1.1.1","_npmVersion":"6.2.0","_nodeVersion":"6.10.0","_npmUser":{"name":"feifang","email":"karen.feifang@gmail.com"},"dist":{"shasum":"69c683b4296e804aaedd81178f9597577bfe319c","size":778707,"noattachment":false,"key":"/vue-wordcloud/-/vue-wordcloud-1.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/vue-wordcloud/download/vue-wordcloud-1.1.1.tgz"},"maintainers":[{"name":"feifang","email":"karen.feifang@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-wordcloud_1.1.1_1543152052348_0.912230729298463"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-21T14:23:56.834Z","publish_time":1543152052608,"_cnpm_publish_time":1543152052608},"1.1.0":{"name":"vue-wordcloud","description":"A Vue.js Word Cloud component","version":"1.1.0","license":"MIT","author":{"name":"fei.fang","email":"karen.feifang@gmail.com"},"private":false,"main":"dist/word-cloud.js","scripts":{"dev":"cross-env NODE_ENV=development webpack-dev-server --open --hot","build":"cross-env NODE_ENV=production webpack --progress --hide-modules"},"dependencies":{"d3":"^4.10.0","d3-cloud":"^1.2.4","d3-scale-chromatic":"^1.3.3","vue":"^2.3.3","vue-resize-directive":"^1.0.0"},"devDependencies":{"babel-core":"^6.0.0","babel-eslint":"7.1.1","babel-loader":"^6.0.0","babel-plugin-transform-runtime":"^6.15.0","babel-preset-env":"^1.7.0","babel-runtime":"^6.11.6","cross-env":"^3.0.0","css-loader":"^0.25.0","eslint":"3.14.1","eslint-config-airbnb-base":"11.0.1","eslint-friendly-formatter":"2.0.7","eslint-import-resolver-webpack":"0.8.1","eslint-loader":"1.6.1","eslint-plugin-html":"2.0.0","eslint-plugin-import":"2.2.0","file-loader":"^0.9.0","uglifyjs-webpack-plugin":"^1.1.6","vue-loader":"^12.1.0","vue-template-compiler":"^2.3.3","webpack":"3.10.0","webpack-dev-server":"^3.1.10"},"gitHead":"0bf8afd7ec33bf4481a8419b97ad99880635a28b","_id":"vue-wordcloud@1.1.0","_npmVersion":"6.2.0","_nodeVersion":"6.10.0","_npmUser":{"name":"feifang","email":"karen.feifang@gmail.com"},"dist":{"shasum":"2e3a5abba482f5c241abc5d33c5069285d52ceb0","size":698556,"noattachment":false,"key":"/vue-wordcloud/-/vue-wordcloud-1.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/vue-wordcloud/download/vue-wordcloud-1.1.0.tgz"},"maintainers":[{"name":"feifang","email":"karen.feifang@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-wordcloud_1.1.0_1543151148958_0.2998884329064828"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2021-12-21T14:23:56.697Z","publish_time":1543151149139,"_cnpm_publish_time":1543151149139},"1.0.2":{"name":"vue-wordcloud","description":"A Vue.js Word Cloud component","version":"1.0.2","author":{"name":"fei.fang","email":"karen.feifang@gmail.com"},"private":false,"main":"dist/word-cloud.js","scripts":{"dev":"cross-env NODE_ENV=development webpack-dev-server --open --hot","build":"cross-env NODE_ENV=production webpack --progress --hide-modules"},"dependencies":{"d3":"^4.10.0","d3-cloud":"^1.2.4","vue":"^2.3.3","vue-resize-directive":"^1.0.0"},"devDependencies":{"babel-core":"^6.0.0","babel-loader":"^6.0.0","babel-preset-env":"^1.5.1","cross-env":"^3.0.0","css-loader":"^0.25.0","file-loader":"^0.9.0","node-sass":"^4.5.0","sass-loader":"^5.0.1","vue-loader":"^12.1.0","vue-template-compiler":"^2.3.3","webpack":"^2.6.1","webpack-dev-server":"^2.4.5","babel-plugin-transform-runtime":"^6.15.0","babel-preset-es2015":"^6.14.0","babel-preset-stage-2":"^6.13.0","babel-runtime":"^6.11.6","babel-eslint":"7.1.1","eslint":"3.14.1","eslint-friendly-formatter":"2.0.7","eslint-loader":"1.6.1","eslint-plugin-html":"2.0.0","eslint-config-airbnb-base":"11.0.1","eslint-import-resolver-webpack":"0.8.1","eslint-plugin-import":"2.2.0"},"gitHead":"e1939fa6b555be17e9f7e55c1ac26443ad57f9f1","_id":"vue-wordcloud@1.0.2","_shasum":"e58255c990da7c723264e8831cc6751332e2034d","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.0","_npmUser":{"name":"feifang","email":"karen.feifang@gmail.com"},"dist":{"shasum":"e58255c990da7c723264e8831cc6751332e2034d","size":599496,"noattachment":false,"key":"/vue-wordcloud/-/vue-wordcloud-1.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/vue-wordcloud/download/vue-wordcloud-1.0.2.tgz"},"maintainers":[{"name":"feifang","email":"karen.feifang@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-wordcloud-1.0.2.tgz_1502524905431_0.4449596768245101"},"directories":{},"_cnpmcore_publish_time":"2021-12-21T14:23:54.805Z","publish_time":1502524906017,"_cnpm_publish_time":1502524906017},"1.0.1":{"name":"vue-wordcloud","description":"A Vue.js Word Cloud component","version":"1.0.1","author":{"name":"fei.fang","email":"karen.feifang@gmail.com"},"private":false,"main":"dist/word-cloud.js","scripts":{"dev":"cross-env NODE_ENV=development webpack-dev-server --open --hot","build":"cross-env NODE_ENV=production webpack --progress --hide-modules"},"dependencies":{"d3":"^4.10.0","d3-cloud":"^1.2.4","vue":"^2.3.3","vue-resize-directive":"^1.0.0"},"devDependencies":{"babel-core":"^6.0.0","babel-loader":"^6.0.0","babel-preset-env":"^1.5.1","cross-env":"^3.0.0","css-loader":"^0.25.0","file-loader":"^0.9.0","node-sass":"^4.5.0","sass-loader":"^5.0.1","vue-loader":"^12.1.0","vue-template-compiler":"^2.3.3","webpack":"^2.6.1","webpack-dev-server":"^2.4.5","babel-plugin-transform-runtime":"^6.15.0","babel-preset-es2015":"^6.14.0","babel-preset-stage-2":"^6.13.0","babel-runtime":"^6.11.6","babel-eslint":"7.1.1","eslint":"3.14.1","eslint-friendly-formatter":"2.0.7","eslint-loader":"1.6.1","eslint-plugin-html":"2.0.0","eslint-config-airbnb-base":"11.0.1","eslint-import-resolver-webpack":"0.8.1","eslint-plugin-import":"2.2.0"},"gitHead":"c13c38e01dc5421a2a61853fa023462cd4eb457d","_id":"vue-wordcloud@1.0.1","_shasum":"fe94b6c73bd1c44e77d15a0899f90487294ae6bc","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.0","_npmUser":{"name":"feifang","email":"karen.feifang@gmail.com"},"dist":{"shasum":"fe94b6c73bd1c44e77d15a0899f90487294ae6bc","size":355523,"noattachment":false,"key":"/vue-wordcloud/-/vue-wordcloud-1.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/vue-wordcloud/download/vue-wordcloud-1.0.1.tgz"},"maintainers":[{"name":"feifang","email":"karen.feifang@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-wordcloud-1.0.1.tgz_1502520750957_0.8153936802409589"},"directories":{},"_cnpmcore_publish_time":"2021-12-21T14:23:53.147Z","publish_time":1502520751234,"_cnpm_publish_time":1502520751234},"1.0.0":{"name":"vue-wordcloud","description":"A Vue.js Word Cloud component","version":"1.0.0","author":{"name":"fei.fang","email":"karen.feifang@gmail.com"},"private":false,"main":"dist/word-cloud.js","scripts":{"dev":"cross-env NODE_ENV=development webpack-dev-server --open --hot","build":"cross-env NODE_ENV=production webpack --progress --hide-modules"},"dependencies":{"d3":"^4.10.0","d3-cloud":"^1.2.4","vue":"^2.3.3","vue-resize-directive":"^1.0.0"},"devDependencies":{"babel-core":"^6.0.0","babel-loader":"^6.0.0","babel-preset-env":"^1.5.1","cross-env":"^3.0.0","css-loader":"^0.25.0","file-loader":"^0.9.0","node-sass":"^4.5.0","sass-loader":"^5.0.1","vue-loader":"^12.1.0","vue-template-compiler":"^2.3.3","webpack":"^2.6.1","webpack-dev-server":"^2.4.5","babel-plugin-transform-runtime":"^6.15.0","babel-preset-es2015":"^6.14.0","babel-preset-stage-2":"^6.13.0","babel-runtime":"^6.11.6","babel-eslint":"7.1.1","eslint":"3.14.1","eslint-friendly-formatter":"2.0.7","eslint-loader":"1.6.1","eslint-plugin-html":"2.0.0","eslint-config-airbnb-base":"11.0.1","eslint-import-resolver-webpack":"0.8.1","eslint-plugin-import":"2.2.0"},"gitHead":"c13c38e01dc5421a2a61853fa023462cd4eb457d","_id":"vue-wordcloud@1.0.0","_shasum":"9d10498f40ee9c22b29fec31f0cc6b262e137316","_from":".","_npmVersion":"3.10.10","_nodeVersion":"6.10.0","_npmUser":{"name":"feifang","email":"karen.feifang@gmail.com"},"dist":{"shasum":"9d10498f40ee9c22b29fec31f0cc6b262e137316","size":12011,"noattachment":false,"key":"/vue-wordcloud/-/vue-wordcloud-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/vue-wordcloud/download/vue-wordcloud-1.0.0.tgz"},"maintainers":[{"name":"feifang","email":"karen.feifang@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/vue-wordcloud-1.0.0.tgz_1502519576438_0.35195347876287997"},"directories":{},"_cnpmcore_publish_time":"2021-12-21T14:23:51.493Z","publish_time":1502519576620,"_cnpm_publish_time":1502519576620}},"readme":"# vue-wordcloud\n\nA Vue.js Word Cloud component based on the original [d3-cloud](https://github.com/jasondavies/d3-cloud) plugin.\n\n**What's New?**\n\nV1.1 Nov 25, 2018:\n\n- Fix #6 add `showTooltip` option\n- Fix #5 add support for custom color scales\n\nV1.0.2 Aug 12, 2017:\n\n- Additional font scale options\n- Easy to use rotation setting\n\nFor details please refer to [options](https://github.com/feifang/vue-wordcloud#options).\n\n### Install\n```\nnpm install vue-wordcloud\n\n```\n\n### Import\n```\nimport wordcloud from 'vue-wordcloud'\n```\n\n### Examples\n\nUsing D3 color scheme Category10:\n\n![Word Cloud Example](wordcloud-min.png)\n\nUsing single color of your choice, e.g. `['#1f77b4']`:\n\n![Word Cloud Example](wordcloud-single-min.png)\n\nUsing single-hue color of your choice, e.g. `['#1f77b4', '#629fc9', '#94bedb', '#c9e0ef']`:\n\n![Word Cloud Example](wordcloud-blue-min.png)\n\nCode:\n```\n<template>\n  <div id=\"app\">\n      <wordcloud\n      :data=\"defaultWords\"\n      nameKey=\"name\"\n      valueKey=\"value\"\n      :color=\"myColors\"\n      :showTooltip=\"true\"\n      :wordClick=\"wordClickHandler\">\n      </wordcloud>\n  </div>\n</template>\n\n<script>\nimport wordcloud from 'vue-wordcloud'\n\nexport default {\n  name: 'app',\n  components: {\n    wordcloud\n  },\n  methods: {\n    wordClickHandler(name, value, vm) {\n      console.log('wordClickHandler', name, value, vm);\n    }\n  },\n  data() {\n    return {\n      myColors: ['#1f77b4', '#629fc9', '#94bedb', '#c9e0ef'],\n      defaultWords: [{\n          \"name\": \"Cat\",\n          \"value\": 26\n        },\n        {\n          \"name\": \"fish\",\n          \"value\": 19\n        },\n        {\n          \"name\": \"things\",\n          \"value\": 18\n        },\n        {\n          \"name\": \"look\",\n          \"value\": 16\n        },\n        {\n          \"name\": \"two\",\n          \"value\": 15\n        },\n        {\n          \"name\": \"fun\",\n          \"value\": 9\n        },\n        {\n          \"name\": \"know\",\n          \"value\": 9\n        },\n        {\n          \"name\": \"good\",\n          \"value\": 9\n        },\n        {\n          \"name\": \"play\",\n          \"value\": 6\n        }\n      ]\n    }\n  }\n}\n</script>\n```\n\nFor using [D3 categorical color schemes](https://github.com/d3/d3-scale-chromatic#categorical):\n```\n<template>\n  <div id=\"app\">\n      <wordcloud\n      :data=\"defaultWords\"\n      nameKey=\"name\"\n      valueKey=\"value\"\n      color=\"Accent\">\n      </wordcloud>\n  </div>\n</template>\n```\n\n### Options\n**选项**|**简介**|**默认值**|**说明**\n:-----:|:-----:|:-----:|:-----:\ndata|词云文本数据|defaultWords|数据格式：数组。数组中每个元素是对象{ 词：数值 }\nnameKey|数据中表示要显示的词的字段名称|'name'|-\nvalueKey|数据中表示词的权重的字段名称|'value'|-\nmargin|图表外边矩|{top: 15, right: 15, bottom: 15, left: 15 }|-\nwordPadding|词间间距|3|-\nrotate|词的旋转角度|{from: -60, to: 60, numOfOrientation: 5 }|可设置角度范围及角度的个数\nspiral|词的布局方式|'archimedian'|可选择'archimedian'或'rectangular'\nfontScale|词的大小缩放比例|'sqrt'|可选择'sqrt'，'log'或'n'\nfontSize|词的字号范围| `[10, 80]`| [minSize, maxSize]\nfont|词的字体名称，对应 `font-family` 的值 |\"impact\"|例如，衬线字体'serif'，非衬线字体'Arial'\ncolor|配色集合，可配置两种类型的值：String (D3 scheme name)，或 Array（自定义的颜色列表）|'Category10'|可采用D3内置的任意 Category 配色，或自定义的颜色列表；单色可通过传入只有一个颜色的数组实现，详见 [examples](https://github.com/feifang/vue-wordcloud#examples)\nshowTooltip|显示 Tooltip|true| true/false; tooltip 的样式（如宽高、颜色等）可以通过 CSS 类 `div.tooltip` 配置\nwordClick|词的点击事件的回调函数|null|函数传入三个变量，第一个是点击的词 `text`，第二个是该词对应的权重 `value`，第三个是 Vue 实例 `vm`\n\n\n\n### Todo\n- minimize component\n- add formatter option for tooltip\n- support D3 V5\n","_attachments":{},"license":"MIT"}