使 Google 可视化 - 注释图表在 GWT 中工作

2024-01-24

我正在使用新发布的注释图表 https://developers.google.com/chart/interactive/docs/gallery/annotationchart在 gwt 中通过调用本机 javascript,到目前为止我得到的是让它按原样显示示例图表,但我遇到的问题是它根本不具有交互性。它看起来更像是一个图像。有人知道我如何才能使其正常工作吗?

这是我正在使用的代码:

public void onModuleLoad() {
    createChart();
}

private native void createChart() 
/*-{

    $wnd.google.setOnLoadCallback(drawChart); 
    function drawChart() {
        var data = new $wnd.google.visualization.DataTable();
        data.addColumn('date', 'Date');
        data.addColumn('number', 'Kepler-22b mission');
        data.addColumn('string', 'Kepler title');
        data.addColumn('string', 'Kepler text');
        data.addColumn('number', 'Gliese 163 mission');
        data.addColumn('string', 'Gliese title');
        data.addColumn('string', 'Gliese text');
        data.addRows([
              [new Date(2314, 2, 15), 12400, undefined, undefined,
                              10645, undefined, undefined],
              [new Date(2314, 2, 16), 24045, 'Lalibertines', 'First encounter',
                              12374, undefined, undefined],
              [new Date(2314, 2, 17), 35022, 'Lalibertines', 'They are very tall',
                              15766, 'Gallantors', 'First Encounter'],
              [new Date(2314, 2, 18), 12284, 'Lalibertines', 'Attack on our crew!',
                              34334, 'Gallantors', 'Statement of shared principles'],
              [new Date(2314, 2, 19), 8476, 'Lalibertines', 'Heavy casualties',
                              66467, 'Gallantors', 'Mysteries revealed'],
              [new Date(2314, 2, 20), 0, 'Lalibertines', 'All crew lost',
                              79463, 'Gallantors', 'Omniscience achieved']
        ]);

        var chart = new $wnd.google.visualization.AnnotationChart($wnd.document.getElementById('chart_div'));

        var options = {
          displayAnnotations: true,
        };

        chart.draw(data, options);
      }
}-*/;

我正在 HTML 文件中加载库:

<!doctype html>
<!-- The DOCTYPE declaration above will set the     -->
<!-- browser's rendering engine into                -->
<!-- "Standards Mode". Replacing this declaration   -->
<!-- with a "Quirks Mode" doctype is not supported. -->

<html>
  <head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">

    <!--                                                               -->
    <!-- Consider inlining CSS to reduce the number of requested files -->
    <!--                                                               -->
    <link type="text/css" rel="stylesheet" href="GUI.css">

    <!--                                           -->
    <!-- Any title is fine                         -->
    <!--                                           -->
    <title>Analytics</title>

    <!--                                           -->
    <!-- This script loads your compiled module.   -->
    <!-- If you add any GWT meta tags, they must   -->
    <!-- be added before this line.                -->
    <!--                                           -->
    <script type="text/javascript" language="javascript" src="gui/gui.nocache.js"></script>
    <script type="text/javascript"  src="http://www.google.com/jsapi"></script>     
    <script type="text/javascript">
        google.load("visualization", "1.1", {'packages' : ["annotationchart"] });
    </script>

  </head>

  <!--                                           -->
  <!-- The body can have arbitrary html, or      -->
  <!-- you can leave the body empty if you want  -->
  <!-- to create a completely dynamic UI.        -->
  <!--                                           -->
  <body>

    <!-- OPTIONAL: include this if you want history support -->
    <iframe src="javascript:''" id="__gwt_historyFrame" tabIndex='-1' style="position:absolute;width:0;height:0;border:0"></iframe>

    <!-- RECOMMENDED if your web app will not function without JavaScript enabled -->
    <noscript>
      <div style="width: 22em; position: absolute; left: 50%; margin-left: -11em; color: red; background-color: white; border: 1px solid red; padding: 4px; font-family: sans-serif">
        Your web browser must have JavaScript enabled
        in order for this application to display correctly.
      </div>
    </noscript>

    <div id="chart_div" style="width: 900px; height: 500px;"></div>

  </body>
</html>

为了回答我自己的问题,here https://github.com/miljanm/Google-Visualization-AnnotatedChart-GWT-wrapper是我为此图表编写的 GWT 包装器。它可以工作并支持所有选项,并且可以像在 GWT 中使用其他 google 图表一样使用它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使 Google 可视化 - 注释图表在 GWT 中工作 的相关文章

随机推荐

  • github api 比较提交,响应状态存在分歧

    在配置jenkins时 我想检测feature分支是否存在合并冲突 所以我使用github api v3在2上进行测试故意的冲突的分支 将branch1合并到master后 我比较了branch2 b2 如下所示 curl i https
  • WS-Security php 中 PasswordDigest 的工作算法

    我一直根据航空公司供应商提供的公式创建哈希密码 我在这个网站上搜索过 我从下面的链接中得到了 C 的解决方案 但我想要 PHP 的解决方案 WS Security 中 PasswordDigest 的工作算法 https stackover
  • 了解 Objective-C 中强指针和弱指针的实际应用

    我刚刚阅读了已接受的优秀答案this https stackoverflow com questions 9262535 explanation of strong and weak storage in ios5这个问题澄清了 Objec
  • JavaScript 输入数字

    如何使用 window prompt 从用户处获取 2 个数字并将它们相加而不连接 我的想法是 var temp window prompt Number1 var temp2 window prompt Number2 var answe
  • 初始化列表和运算符的 RHS

    我不明白为什么初始化列表不能在运算符的 RHS 上使用 考虑 class foo struct bar template
  • javafx拉伸图像以填充按钮?

    我正在用 Java JavaFX 编写一个 星际迷航 游戏 我的想法是主游戏屏幕是一个 10x10 的按钮网格面板 所有游戏部件 企业 克林贡 行星等 都将在按钮中显示为图标 这样 您可以单击一个空间对象来选择它 扭曲到它 射击它等等 当然
  • HttpWebRequest 与 HttpClient

    我有一段代码可以使用HttpWeb请求 and HttpWeb响应但我想将其转换为使用Http客户端 and Http响应消息 这是有效的代码块 HttpWebRequest request HttpWebRequest HttpWebRe
  • 为 OS X 构建虚拟相机

    我需要在 Skype 等程序中获取合成生成的视频流 音频部分很简单 有一个项目叫音花 https code google com p soundflower 这是一个适配器 它在一侧呈现虚拟音频目标设备 在另一侧呈现视频源 我正在为 OSX
  • 使用 Qt 显示 ubuntu (linux) 通知

    我正在使用 Qt 中的 Phonon 多媒体框架 它会弹出一条消息 就像改变音量时弹出的音量通知消息 因为我的音频设备尚未完全配置 是否可以从 Qt 启动我自己的通知 请看上图 非常感谢 AFAIK 使用 libnotify 是可行的方法
  • 如何获取最接近的元素id属性

    我试图找到最接近的具有 id 属性的元素并获取id 该元素可以是 p p div 或其他元素 我努力了 element test closest div id attr id 但只有当元素是 a 时它才会获取 iddiv 我想变得更加普遍
  • 为什么不读/写其内容的结构体的方法仍然会导致竞争情况?

    From 戴夫 切尼博客 http dave cheney net 2015 11 18 wednesday pop quiz spot the race 以下代码显然会导致竞争情况 只需更改即可解决func RPC version int
  • NTP 对于分布式时间同步有多好?

    NTP 用于保持一组服务器时间同步的准确度如何 我正在编写一项服务 需要一组服务器 一些充当客户端 一些充当服务器 同步到二级粒度 我想知道 NTP 是否是最好使用的东西 或者是否有更好的东西 我应该在其中一个上运行 ntp 服务器 并让其
  • 如何从多个接口组成一个 WCF 合约?

    我有多个接口 所有这些都应该由单个合约接口继承和公开 interface A void X interface B void Y interface C A B this is the public contract 这怎么可能 我无法将
  • 如何将 Visual Studio .NET 2008 解决方案转换为 Visual Studio .NET 2005?

    假设解决方案仅包含类 并且这些类全部按照 NET 2 0 规范编写 如果要在 Visual Studio 2008 中打开 转换和保存该解决方案 是否可以稍后在 Visual Studio 2005 中重新打开该解决方案 并对 SLN 文件
  • 根据多年每日天气数据计算每日平均值?

    我有从 1984 年到 2014 年 31 年的每日数据 我想计算变量的 31 年的每日平均值 date Min daily Max daily Rain daily 01 01 1984 18 8 3 6 0 02 01 1984 20
  • 将 DataGridView 内容复制到剪贴板

    我想复制 DataGridView 的内容并将其粘贴到 Excel 中 我试过 myDataGrid SelectAll DataObject dataObj myDataGrid GetClipboardContent Clipboard
  • android中如何保存数据结构?

    我想存储这样的结构中的一些数据 class Project ChildA a ChildB b class ChildA ChildC c 我创建了如下数据 Projet x new Project x a new ChildA x a c
  • Tensorflow 2.0 数据集和数据加载器

    我是一个pytorch用户 我习惯了pytorch中的data dataset和data dataloader api 我正在尝试使用tensorflow 2 0构建相同的模型 我想知道pytorch中是否有与这些api类似的api 如果没
  • 如何检查网络端口是否开放?

    我如何使用 python 知道 linux ubuntu 而不是远程系统 上的某个端口是否打开 关闭 如何在 python 中列出这些开放端口 网络统计 有没有办法将 netstat 输出与 python 集成 您可以使用插座模块 http
  • 使 Google 可视化 - 注释图表在 GWT 中工作

    我正在使用新发布的注释图表 https developers google com chart interactive docs gallery annotationchart在 gwt 中通过调用本机 javascript 到目前为止我得