page.render('total.html')
Page.save_resize_html('total.html', cfg_file='chart_config4.json', dest="my_new_charts.html")
pyecharts使用page组合地图
html和json文件都有了,path也是对的,但是在page.save_resize_html()这行代码执行后,虽然生成了新的html,但是里面我配置的位置并没有改变。
求解!
你看看page.save_resize_html()之前是不是设置了图表的位置和大小,要是没有设置,示例代码
```python
page.add(chart, grid_opts=opts.GridOpts(pos_left="20%", pos_top="20%", width="60%", height="60%"))
```,可以自己根据自己的修改修改看看行不行。除了上面的方法,使用page.grid()方法来创建一个网格布局,并在其中放置图表,通过调整网格布局的参数也可以实现
不知道你这个问题是否已经解决, 如果还没有解决的话:回答:
对于这个问题,有一些可能的原因导致位置没有改变。我将给出一些潜在的解决方案。首先,请确保您的路径是正确的。您可以通过在代码中加入一个print语句来打印出生成的HTML文件的路径,以确保它是正确的。
print(page.save_resize_html())
如果路径正确,您可以尝试以下解决方案:
检查是否存在缓存文件:pyecharts生成的HTML文件中可能存在一些缓存文件,导致位置没有改变。您可以尝试删除HTML文件所在目录中的所有缓存文件,并重新运行代码。
清除浏览器缓存:有时候浏览器会缓存HTML文件,导致位置没有改变。您可以尝试在浏览器中清除缓存,然后重新加载HTML文件查看是否有改变。
更新pyecharts库:确保您使用的是最新版本的pyecharts库。您可以使用以下代码来检查和更新pyecharts库。
python !pip install --upgrade pyecharts
检查浏览器兼容性:不同的浏览器可能对HTML文件的渲染效果有所差异。您可以尝试在不同的浏览器中打开HTML文件,查看是否有改变。
如果以上解决方案都无效,可能是由于其他原因导致的问题。
page.render('total.html')
Page.save_resize_html('total.html', cfg_file='chart_config4.json', dest="my_new_charts.html")
这两行代码是写在了一个python文件里面,代码执行后也确实生成了新的html, 对html里面的元素布局保存了json之后,我再次执行了上述python代码,发现并没有变化。
但是我发现,如果我不再重新执行一遍
page.render('total.html')
这个代码,而是直接执行下一行代码,我原本配置的网络布局,是有效的。
目前推测结果就是再次执行page.render()虽然生成的html没有变化,但某些id或者这个html的识别已经更新导致了原本的json不再适用导致。(因为当初没有用jupyter导致了这个失误,若推测结果不对,还请见谅,希望给予纠正,谢谢)