有您的設置幾個問題的形式。
首先,啓用了parseDates
的圖表的數據結構不正確。您不能擁有同一日期的多個元素。 AmCharts要求您將數據點分組,如果他們共享相同的日期/類別。這是設計和網站上的每個示例都顯示了這一點,因此您所有的2016-03-29和2016-10-20點都可以縮減爲兩個對象。我假定這些多值對應於不同的圖形對象,所以你需要爲每一個獨特的價值領域,即
[{
date: "2016-03-29",
value1: 5,
value2: 1,
value3: 5,
value4: 4,
value5: 1,
value6: 3
}, {
date: "2016-10-20"
value1: 0,
value2: 0,
value3: 0
}]
然後你有設置通過value6爲VALUE1 valueFields 6個圖形對象,以適應這些點。再次,我假設你有多個給定數據集的圖。
編輯
您的評論表明,這種情況並非如此,他們都屬於一個圖形。您仍然需要重構數據並提供唯一的時間戳,因爲您無法爲具有parseDates
的啓用圖表的相同時間戳記輸入多個條目。如果這些值在不同的時間出現,則提供該信息。例如,假設你的數據是每小時:
{date: "2016-03-29 01:00", value: 5}
{date: "2016-03-29 02:00", value: 1}
{date: "2016-03-29 03:00", value: 5}
{date: "2016-03-29 04:00", value: 4}
{date: "2016-03-29 05:00", value: 1}
{date: "2016-03-29 06:00", value: 3}
{date: "2016-10-20 01:00", value: 0}
{date: "2016-10-20 02:00", value: 0}
{date: "2016-10-20 03:00", value: 0}
這會工作,但你必須設置你的dataDateFormat
匹配的時間戳(在這種情況下"YYYY-MM-DD JJ:NN"
),並調整minPeriod
以適應您的點之間的最小間隔(對於這個例子:"hh"
)。
如果你不解析日期,那麼你可以保留你的設置,但是圖表看起來很奇怪,有多個2016-03-29條目。那些是你唯一的選擇。
至於顯示多個數值軸,數值軸需要與圖形關聯。如果您需要多個數值軸,那麼您需要多個圖表。每個圖形的valueAxis
屬性需要分配給valueAxis對象或valueAxis id
。您無法將多個值軸分配給一個圖形對象。你可以看到這是如何工作的this example。
如果你只有一個圖形,需要顯示第二數值軸,創建一個副本圖形實例,並禁用其視覺方面,比如:沒有真正
valueAxes: [{
"position": "left",
"id": "v1"
}, {
"position": "right",
"id": "v2"
}],
graphs: [{
//initial graph
type: "line",
bullet: "round",
valueField: "value"
}, {
//invisible duplicate graph
//for second axis
lineAlpha: 0,
showBalloons: false,
visibleInLegend: false,
valueAxis: "v2",
valueField: "value"
}],
Demo
我的數據只是限制在一個日期內最多6個值,它可以是15或者也許是母馬。其次,我不使用多個圖表,我希望單個圖表適應所有這些點。我有第二張圖,但這只是繪製一條趨勢線(所有y軸值對一個日期的中位數),它與第一張圖不直接相關。 –
就像我說的,你不能在同一個確切的日期有多個點,只有一個圖上沒有時間戳。 AmCharts不是爲此設計的。如果您的值與該日期的多個不同時間戳(2016-03-26 01:00,2016-03-26 02:00等)相關聯,那將起作用,因此我對添加不同時間戳和更改dataDateFormat的評論以及minPeriod來識別它們。點仍然是有多個y軸 - 它們每個都需要一個獨特的圖形。 – xorspark
如果您只有一個圖形,則將其複製並分配給第二個數值軸。你也想要禁用它的所有視覺方面。 [演示](https://codepen.io/team/amcharts/pen/f30443d7dcad795b8cdf1990a1a3a1ee?editors=0010) – xorspark