【发布时间】:2015-07-21 13:19:12
【问题描述】:
我正在尝试使用PUBNUB EON charting library 渲染样条图。我不明白这里出了什么问题。我可以在控制台中看到数据,但图表没有渲染,只有 x 和 y 轴线。我从 python SDK 获取数据并通过 javascript SDK 订阅。控制台中没有错误信息。
我的python代码是
def counterVolume(data):
for each in data:
y = each.counter_volume
data_clean = json.dumps(y, indent=4, separators=(',', ': '))
print pubnub.publish(channel='channel', message= data_clean)
counterVolume(data)
我的订阅javascript函数是
var data;
var pubnub = PUBNUB.init({
publish_key: 'pub',
subscribe_key: 'subf'
});
var channel = "c3-spline";
eon.chart({
history: true,
channel: 'channel',
flow: true,
generate: {
bindto: '#chart',
data: {
x: 'x',
labels: false
},
axis : {
x : {
type : 'timeseries',
tick: {
format: '%m-%d %H:%M:%S'
}
}
} }});
function dataCallback(){
pubnub.subscribe({
channel: 'channel',
message: function(m){
data = m
console.log(data)
}
});
};
dataCallback();
pubnub.publish({
channel: 'orbit_channel',
message: {
columns: [
['x', new Date().getTime()],
['y', data]
]
}
})
我可以在控制台中看到这些值,但我不明白为什么它不会在图表上呈现。
python脚本的结果:
89453.0
89453.0
89453.0
89453.0
【问题讨论】:
-
嗨 Hina,感谢您询问 Eon。您可以粘贴来自
Python Publish的数据示例结果(JSON 消息)吗?另外我注意到你的 JavaScript 有一个Subscribe和一个Publish调用,应该省略。 -
@PubNub 我已将结果添加到上述问题中,请查看。即使我省略了发布功能,图表也不会呈现:(
-
两个可能的问题: 1. 不同的 pub/sub 键,只是为了确保您在 python 和 javascript 上使用相同的键来实例化 pubnub。 2. 可以打印
data_clean给我们吗?89453.0不是 JSON 对象,EON 需要标准负载。我敢打赌那里有错误。 -
89453.0被验证为我们在 PubNub 支持为有效 JSON 的文字。但是,您的答案如下所示,因为您需要确保将我们的transform方法转换为 EON 格式。
标签: javascript python charts pubnub