ios - 如何在 iOS 中创建类似 d3 的气泡图

标签 ios swift charts bubble-chart

enter image description here

我需要在我的项目中创建如下所示的类似气泡图。我尝试使用 collectionview,但我遇到了单元格框架的问题。在 iOS 中绘制它的最佳方式是什么?

最佳答案

在swift中使用wkWebView实现这个功能相对容易。

基本逻辑是让wkWebView渲染d3.js,而不是用swift写collection view。

  • 第一步。准备 d3.js 的源代码以及 index.html 文件和 CSS 文件。 (首先确保它们在普通网络浏览器中正常工作。)
  • 第二步。将 d3.js、index.html 和 CSS 文件放在一个文件夹中。确保这些文件的路径名是正确的。例如;我有<script src="./colorPicker.js"></script>在我的 index.html 中。
  • 第 3 步。下载 d3 库,它是一个名为 d3.min.js 的文件。 (按照本教程进行操作。https://www.tutorialspoint.com/d3js/d3js_installation.htm)将 d3.min.js 文件与 d3.js、index.html 和 CSS 文件一起放入文件夹中。
  • 第 4 步。将文件夹移动到 Xcode(您的 iOS 项目目录)。
  • 第 5 步。在您的 Controller 中导入 WebKit,初始化一个 webView,设置此 webView 的 URL 路径,并将此 View 添加为您的 Controller 的 subview 。
  var webView = WKWebView()  
  webView.frame = CGRect(x: 0, y: 0, width: 100, height: 600)
  let htmlPath = Bundle.main.path(forResource: "./index", ofType: "html")
  let url = URL(fileURLWithPath: htmlPath!)
  let request = URLRequest(url: url)
  webView.load(request)
  self.addSubview(webView)

这是我在我的项目中对混合 d3.js 和 Swift 所做的。请参阅此链接上的简短演示视频 https://www.linkedin.com/in/michaellinliu/detail/recent-activity/shares/ enter image description here

关于ios - 如何在 iOS 中创建类似 d3 的气泡图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49920044/

相关文章:

iOS模拟器问题

c# - 如何在图表上设置系列颜色?

javascript - X 轴上带有日期的 AmCharts float 条

笛卡尔坐标系中的 JavaScript/JSF2 数据(矩形)可视化

objective-c - NSMutableString append 什么都不做

ios - Apple 的 "real-world services"是什么可以在 iOS 应用程序中通过 Paypal 支付?

ios - 添加 iOS @1x、@2x、@3x PER 设备,如何?

swift - 启用混合导致 renderPipelineState 无法在 MetalKit MTKView 中构建

swift - Swift 内存管理是如何工作的?

ios - 如何直接在 iOS 应用程序中存储和使用 MP4 文件