Python 如何从字典列表中创建FusionCharts热图?

Python 如何从字典列表中创建FusionCharts热图?,python,data-visualization,heatmap,fusioncharts,json-normalize,Python,Data Visualization,Heatmap,Fusioncharts,Json Normalize,我想使用python中的FusionCharts热图显示以下数据: [{'day_of_like': 'Monday', 'hours_of_like': 18, 'avg_of_likes': 8}, {'day_of_like': 'Monday', 'hours_of_like': 23, 'avg_of_likes': 5}] 但我在FusionCharts网站上找不到这方面的指南。如何使用python实现这一点? 这个答案用来说明这个例子 问题似乎在于如何将数据转换成有用的格式 所有

我想使用python中的FusionCharts热图显示以下数据:

[{'day_of_like': 'Monday', 'hours_of_like': 18, 'avg_of_likes': 8}, {'day_of_like': 'Monday', 'hours_of_like': 23, 'avg_of_likes': 5}]
但我在FusionCharts网站上找不到这方面的指南。如何使用python实现这一点?

  • 这个答案用来说明这个例子
  • 问题似乎在于如何将数据转换成有用的格式
  • 所有可视化工具的要点是,数据必须是工具的正确形状。
    • 我将使用将
      dict
      s的
      列表
      转换为面板数据表单
    • :FusionCharts XT接受XML或JSON数据以绘制图表
      • 这可以通过输出JSON字符串的,或通过输出python
        dict
        来完成
将熊猫作为pd导入
导入seaborn作为sns
#字典目录
数据=[{'day'u of'u like':'Monday','hours'u of'u like':18,'avg'u of'u like':8},{'day'u of'u like':'Monday','hours'u of'u like':23,'avg'u of'u likes':5}]
#转换为数据帧
df=pd.json\u规范化(数据)
#如果需要,将数据保存到csv
df.to_csv('test.csv',index=False)
#显示(df)
一天中的每小时中的每小时
0星期一18 8
1星期一23 5
#到json
df.to_json()
[out]:
"{{}{{}{}{}{}{}{}}{}{}}{{}}{}}{}}{}{}{}}{}{}}{}}{}{}}{}}{}}}{
#口述
df.to_dict()
[out]:
{'day_of_like':{0:'Monday',1:'Monday'},'hours_of_like':{0:18,1:23},'avg_of_like':{0:8,1:5}
#密谋
sns.热图(df['喜欢的小时数','喜欢的平均小时数']]

基于共享的数据,看起来您必须复制day_of_like属性,您需要为每个重复键设置一个唯一值或设置一个唯一值。这里是FusionCharts中相同的JavaScript表示形式-


仅供参考:彻底回答问题非常耗时。如果你的问题得到了解决,那就接受最符合你需要的解决方案来表示感谢。接受检查位于答案左上角的向上/向下箭头下方。如果出现更好的解决方案,则可以接受新的解决方案。如果你有15+的声誉,你也可以用向上或向下箭头对答案的质量/帮助性进行投票。如果解决方案不能回答问题,请留下评论。非常感谢。
  "dataset": [{
          "data": [{
              "rowid": "hl",
              "columnid": "1",
              "value": "18",
              "colorRangeLabel": "Bad"
            },
            {
              "rowid": "al",
              "columnid": "1",
              "value": "8",
              "colorRangeLabel": "Bad"
            },
          {
              "rowid": "hl",
              "columnid": "2",
              "value": "23",
              "colorRangeLabel": "Good"
            },
            {
              "rowid": "al",
              "columnid": "2",
              "value": "5",
              "colorRangeLabel": "Bad"
            }
          ]
        }]