【问题标题】:Changing data when click button in chart.js/vue.js单击 chart.js/vue.js 中的按钮时更改数据
【发布时间】:2020-04-25 20:33:47
【问题描述】:
  • 我有这个气泡图,如果一个数据点,value 2 > 1,000 ;我想把它的颜色改成黄色

  • 默认每个值点=1,000;如果用户点击气泡,我希望它是 = 6,000;因此使气泡从蓝色(默认)变为黄色。

我能够执行逻辑,在控制台中它显示正确的值,但我试图弄清楚如何:

  1. 重新加载图表;传递新的正确值;适当调整颜色或...
  2. 覆盖此图;使用调整后的颜色制作新图表

查看了githubhttps://vue-chartjs.org/guide/#updating-charts,说实话,我只用Python写过代码,只需要这个小JS元素,提前谢谢!

这是我希望重新加载值的代码:

<div id="app">
  <graph-bubblecloud
            :width="500"
            :height="500"
            :padding-top="5"
            :padding-bottom="0"
            :padding-left="0"
            :padding-right="0"
            :values="values"
            :colors="colors"
            :styles="styles"
            :render-interval="0"
            @click="onClickEvent">
        <note :text="'Demo Graph v1'" :align="'left'"></note>
    </graph-bubblecloud>
</div>

<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.16/vue.js"></script>
<script src="https://cdn.jsdelivr.net/npm/vue-graph@0.5.3/dist/vue-graph.js"></script>


<script>
var vm = new Vue({
    el: "#app",
    data: {
        values: [
            [ "value1", 50, 6000 ],
            [ "value2", 50, 1000 ],
            [ "value3", 50, 1000 ],
            [ "value4", 50, 1000 ],
            [ "value5", 50, 1000 ],
            [ "value6", 50, 1000 ],
            [ "value6", 50, 1000 ]
        ],
        colors: function(data) {
            if (data[2] <= 1000) {
              return '#497eff';
            } else {
              return '#ffff00';
            }
        },
        styles: {
            titleFontSize: 19,
            titleFontWeight: 'bold'
        }
    },
    methods: {
        onClickEvent: function(obj, e) {
            console.log(obj.data);
            if (obj.data[2] > 1000) {
              obj.data[2] = 6000;

            } else {
              obj.data[2] = 6000;
            }
        }

    }
});
</script>

【问题讨论】:

    标签: javascript html vue.js vuejs2 chart.js


    【解决方案1】:

    用它来用新数据更新图表:

        this.renderChart(this.chartdata, this.options)
    

    【讨论】:

      猜你喜欢
      • 2017-12-27
      • 2017-09-23
      • 2018-04-13
      • 2018-03-16
      • 1970-01-01
      • 1970-01-01
      • 2020-08-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多