2017-01-06 31 views
1

mixpanel.com client デフォルトでは、mixpanel.comは不完全な週を表すチャート上に点線を表示し、他のすべての週は実線です)。Mixpanel charts - 不完全な週の実線と点線を表示する方法

グラフを作成するには.MPChart()を呼び出しますが、実線のみが表示されます。私は最後に点線を見たいと思います。私はhttps://mixpanel.com/help/platform#ui/charthttp://api.highcharts.com/highchartsを見てきましたが、私はこれを行う方法が見つかりません。ここで

はいくつかのコードで、

テンプレート:

<div ref="chart123" id="chart123"></div> 

JS:

// using ReactJS refs 
    chart123 = $(this.refs.chart123).MPChart({ 
     chartType: 'line', 
     highchartsOptions: { 
      tooltip: { 
       formatter: function() { 
        return self.formatTooltip(this) 
       } 
      } 
     } 
    }); 

    chart123.MPChart('setData', this.state.data); 

はここに同じ質問ですが、彼らはChart.jsを使用していた:Can we draw a Line Chart with both solid and dotted line in it?

答えて

0

は作業を参照してください。 JSFiddleここ:http://jsfiddle.net/weilandia/ykpnoeLf/

上記の例では、Mixpanelのツールチップを荒々しく模擬しています。

限り不完全な時間間隔で点線として、私がHighchartsで初期化する前に、一連のオブジェクトを更新するために、以下の機能を使用する:

function specifyIncompleteZones(series, intervalType) { 
    if (series.data.length > 0) { 
    var lastDataPoint = series.data[series.data.length - 1]; 
    var penultimateDataPoint = series.data[series.data.length - 2]; 
    if (seriesIsIncomplete(lastDataPoint[0], intervalType)) { 
     series.zoneAxis = 'x'; 
     series.zones = [ 
     { value: penultimateDataPoint[0] }, 
     { dashStyle: 'dash' } 
     ]; 
    } 
    } 
} 

function seriesIsIncomplete(pointValue, intervalType) { 
    var startDate = moment(pointValue).utc(); 
    var endDate = startDate.endOf(intervalType).toDate(); 

    return moment().isBefore(endDate); 
} 
関連する問題