我是 Python 可视化新手,一直在尝试 vincent's Quick Start examples在 iPython 笔记本中。
我将以下代码粘贴到 iPython Notebook 中并显示可视化效果。然后,我将相同的代码粘贴到 (1) shell 中,然后 (2) 粘贴到从命令行运行的 .py 文件中,两次都没有显示可视化内容。我做错了什么?
import pandas as pd
import random
import vincent
#Iterable
list_data = [10, 20, 30, 20, 15, 30, 45]
vincent.core.initialize_notebook()
#Dicts of iterables
cat_1 = ['y1', 'y2', 'y3', 'y4']
index_1 = range(0, 21, 1)
multi_iter1 = {'index': index_1}
for cat in cat_1:
multi_iter1[cat] = [random.randint(10, 100) for x in index_1]
cat_2 = ['y' + str(x) for x in range(0, 10, 1)]
index_2 = range(1, 21, 1)
multi_iter2 = {'index': index_2}
for cat in cat_2:
multi_iter2[cat] = [random.randint(10, 100) for x in index_2]
line = vincent.Line(multi_iter1, iter_idx='index')
line.axis_titles(x='Index', y='Value')
line.legend(title='Categories')
最佳答案
您需要告诉 Vincent 输出 html,然后使用浏览器显示结果。在独立脚本中,执行 vincent.core.initialize_notebook()
行没有意义,因此您应该将其删除。
在您的情况下,只需在脚本末尾添加以下行:
line.to_json('line.json', html_out=True, html_path='line.html')
之后,您只需双击生成的 line.html
文件,它将在浏览器中打开。看看here了解更多详情。
关于python - Vincent 可视化未从命令行显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26132380/