Python 如何将从excel工作表提取的数据框中的所有数据传递到highchart?
我有一个原始数据,现在我需要使用原始数据绘制一个highchart并传递给Django,任何人都可以与我分享如何绘制highchart以在HTML页面中显示?我对python、Django和Highchart非常陌生,我已经阅读了Highchart上的所有相关材料,但我仍然不理解,也无法开始Python 如何将从excel工作表提取的数据框中的所有数据传递到highchart?,python,django,pandas,highcharts,Python,Django,Pandas,Highcharts,我有一个原始数据,现在我需要使用原始数据绘制一个highchart并传递给Django,任何人都可以与我分享如何绘制highchart以在HTML页面中显示?我对python、Django和Highchart非常陌生,我已经阅读了Highchart上的所有相关材料,但我仍然不理解,也无法开始 从这一点,我可以合同的图表,但在我的情况下,我需要提取所有的数据和绘图图表。我尝试应用{%block content%},标题都基于数据框中的原始数据名,但我仍然无法根据您的错误消息构建图表,Django似
从这一点,我可以合同的图表,但在我的情况下,我需要提取所有的数据和绘图图表。我尝试应用{%block content%},标题都基于数据框中的原始数据名,但我仍然无法根据您的错误消息构建图表,Django似乎无法确定
urls.py
文件中名为bar
的url,我想您忘了放置asbar
,这样javascript函数就可以从BarView中获取数据
下面添加一个示例,项目名称为questions
,并创建一个名为charts
的新应用程序,项目结构如下:
--图表
--问题
--db.sqlite3
--manage.py
1,问题/url.py
:
from django.conf.urls import url, include
from django.contrib import admin
from charts import views as charts_views
urlpatterns = [
url(r'^bar$', charts_views.BarView.as_view(), name='bar'),
url(r'^charts/', include('charts.urls')),
url(r'^admin/', admin.site.urls),
]
from django.conf.urls import url
from . import views
app_name = 'charts'
urlpatterns = [
url(r'^$', views.index),
]
from django.shortcuts import render
# Create your views here.
from highcharts.views import HighChartsBarView
import random
def index(request):
return render(request, 'charts/index.html')
class BarView(HighChartsBarView):
categories = ['Orange', 'Bananas', 'Apples']
@property
def series(self):
result = []
for name in ('Joe', 'Jack', 'William', 'Averell'):
data = []
for x in range(len(self.categories)):
data.append(random.randint(0, 10))
result.append({'name': name, "data": data})
return result
2,图表/url.py
:
from django.conf.urls import url, include
from django.contrib import admin
from charts import views as charts_views
urlpatterns = [
url(r'^bar$', charts_views.BarView.as_view(), name='bar'),
url(r'^charts/', include('charts.urls')),
url(r'^admin/', admin.site.urls),
]
from django.conf.urls import url
from . import views
app_name = 'charts'
urlpatterns = [
url(r'^$', views.index),
]
from django.shortcuts import render
# Create your views here.
from highcharts.views import HighChartsBarView
import random
def index(request):
return render(request, 'charts/index.html')
class BarView(HighChartsBarView):
categories = ['Orange', 'Bananas', 'Apples']
@property
def series(self):
result = []
for name in ('Joe', 'Jack', 'William', 'Averell'):
data = []
for x in range(len(self.categories)):
data.append(random.randint(0, 10))
result.append({'name': name, "data": data})
return result
3,图表/视图.py
:
from django.conf.urls import url, include
from django.contrib import admin
from charts import views as charts_views
urlpatterns = [
url(r'^bar$', charts_views.BarView.as_view(), name='bar'),
url(r'^charts/', include('charts.urls')),
url(r'^admin/', admin.site.urls),
]
from django.conf.urls import url
from . import views
app_name = 'charts'
urlpatterns = [
url(r'^$', views.index),
]
from django.shortcuts import render
# Create your views here.
from highcharts.views import HighChartsBarView
import random
def index(request):
return render(request, 'charts/index.html')
class BarView(HighChartsBarView):
categories = ['Orange', 'Bananas', 'Apples']
@property
def series(self):
result = []
for name in ('Joe', 'Jack', 'William', 'Averell'):
data = []
for x in range(len(self.categories)):
data.append(random.randint(0, 10))
result.append({'name': name, "data": data})
return result
4、charts/templates/charts/index.html
:
{% load staticfiles %}<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Hello</title>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript" src="{% static 'js/highcharts/highcharts.js' %}"></script>
<script type="text/javascript">
$(function () {
$.getJSON("{% url 'bar' %}", function(data) {
$('#container').highcharts(data);
});
});
</script>
</head>
<body>
<div id="container" style="height: 300px"></div>
</body>
</html>
{%load staticfiles%}
你好
$(函数(){
$.getJSON(“{%url”栏“%}”,函数(数据){
$(“#容器”)。海图(数据);
});
});
5、运行服务器,并在浏览器中键入http://127.0.0.1:8000/charts/
它会向你展示图表,希望对你有所帮助
您是否遵循了此说明?是的,我遵循了此说明,但对于参数为“()”且未找到关键字参数“{}”的“bar”,我得到了相反的错误。已尝试0个模式:[0]请共享您的视图和模板代码。我的代码与您建议的链接完全相同,我想在此处发布,但不可用谢谢,我可以打印此内容,现在我尝试从excel工作表中调出所有数据,谢谢