有没有办法提取从stat_smooth返回的拟合线的值? 我使用的代码如下所示: p <- ggplot(df1, aes(x=Days, y= Qty,group=Category,color=Category)) p <- p + stat_smooth(method=glm, fullrange=TRUE)+ geom_point()) 这个新的用户将非常感谢任何指导。
我有一个远远低于一页的h1 .. <h1 id="scroll-to">TRIGGER EVENT WHEN SCROLLED TO.</h1> 我想在用户滚动到h1时触发警报,或者在浏览器的视图中显示警报。 $('#scroll-to').scroll(function() { alert('you have scrolled to the h1!'); }); 我该怎么做?
鉴于软件在哪里… 该系统由几个子系统组成 每个子系统由几个组件组成 每个组件都使用很多类来实现 …我喜欢编写每个子系统或组件的自动化testing。 我不写一个组件的每个内部类的testing(因为每个类都有助于组件的公共function,因此可以通过组件的公共API从外部testing/testing)。 当我重构组件的实现时(我经常这样做,作为添加新function的一部分),因此我不需要改变任何现有的自动化testing:因为testing只依赖于组件的公共API和公共API通常是扩大而不是改变。 我认为这个政策与像重构testing代码 ( Refactoring Test Code )这样的文档形成了鲜明的对比。 “…unit testing…” “…系统中每个class的testing课程…” “…testing代码/生产代码比…理想地认为接近1:1的比率…” …我想所有这些我都不同意(或者至less不练习)。 我的问题是,如果你不同意我的政策,你会解释为什么吗? 这种testing程度在哪些情况下不足? 综上所述: 公共接口被testing(并重新testing),很less发生变化(它们被添加到但很less被修改) 内部API隐藏在公共API的后面,可以在不改写testing公共API的testing用例的情况下进行更改 脚注:我的一些“testing用例”实际上是作为数据实现的。 例如,UI的testing用例由包含各种用户input的数据文件和相应的预期系统输出组成。 testing系统意味着具有testing代码,其读取每个数据文件,将input重放到系统中,并声明它获得相应的期望输出。 尽pipe我很less需要更改testing代码(因为公共API通常被添加到而不是被改变),但是我确实发现有时(例如每周两次)需要改变一些现有的数据文件。 这可能会发生在我更改系统输出时(即新function改进了现有输出),这可能会导致现有testing“失败”(因为testing代码只会试图断言输出没有改变)。 为了处理这些情况,我做了以下工作: 重新运行自动化testing套件,该testing套件包含一个特殊的运行时间标志,该标志告诉它不声明输出,而是将新的输出捕捉到一个新的目录 使用可视化差异工具来查看哪些输出数据文件(即,哪些testing用例)已经改变,并且鉴于新function,validation这些改变是好的并且如预期的那样 通过将新目录中的新输出文件复制到运行testing用例的目录(覆盖旧testing)来更新现有testing 脚注:“组件”是指像“一个DLL”或“一个程序集”这样的东西……这个东西足够大,可以在系统的体系结构或部署图上看到,通常使用几十个或100个类来实现,使用一个只包含大约1个或几个接口的公共API …可以分配给一个开发团队(将不同的组件分配给不同的团队)的东西,因此根据Conway定律一个相对稳定的公共API。 脚注:文章面向对象testing:神话与现实说, 神话:黑盒testing就足够了。 如果你使用类接口或规范来做testing用例devise的细致工作,那么你可以放心,这个类已经被充分运用了。 白盒testing(看一个方法的实现来devisetesting)违反了封装的概念。 现实:面向对象的结构问题,第二部分。 许多研究表明,开发人员认为彻底彻底的黑盒testing套件只能在被testing的实现中使用三分之一到一半的语句(更不用说path或状态)。 这有三个原因。 首先,所select的input或状态通常会执行正常path,但不会强制所有可能的path/状态。 其次,黑盒testing本身并不能揭示出惊喜。 假设我们已经testing了被测系统的所有指定行为。 为了确信没有不明确的行为,我们需要知道系统的任何部分是否未被黑盒testing套件行使。 这个信息可以通过代码工具获得。 第三,在不检查源代码的情况下常常难以执行exception和error handling。 我应该补充一点,我正在做白盒functiontesting:我看到了代码(在实现中),我编写了functiontesting(驱动公共API)来执行各种代码分支(function实现的细节)。
find包含k位集的长度为n的所有二进制string的最佳algorithm是什么? 例如,如果n = 4,k = 3,则有… 0111 1011 1101 1110 我需要一个好的方法来生成这些给定的任何n和任何k,所以我宁愿用string来完成。
我的程序连接到MySQL数据库工作正常。 然后,不更改任何代码用于build立连接,我得到这个exception: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. 发生了什么? 用于获取连接的代码: private static Connection getDBConnection() throws SQLException, InstantiationException, IllegalAccessException, ClassNotFoundException { String username = "user"; String password = "pass"; String url = "jdbc:mysql://www.domain.com:3306/dbName?connectTimeout=3000"; Class.forName("com.mysql.jdbc.Driver"); Connection conn […]
我有一个深度嵌套的文档结构,如下所示: {id: 1, forecasts: [ { forecast_id: 123, name: "Forecast 1", levels: [ { level: "proven", configs: [ { config: "Custom 1", variables: [{ x: 1, y:2, z:3}] }, { config: "Custom 2", variables: [{ x: 10, y:20, z:30}] }, ] }, { level: "likely", configs: [ { config: "Custom 1", variables: [{ x: 1, […]
我正在使用Java编写的程序, 对于某些操作 ,使用用户configuration的命令行启动外部程序。 目前它使用Runtime.exec()并不保留Process引用(启动的程序是文本编辑器或归档实用程序,因此不需要系统input/输出/ errstream)。 这个问题有一个小问题,那就是当Java程序退出的时候,直到所有已经启动的程序退出,它才真正退出。 如果启动的程序完全独立于启动它们的JVM,我会更喜欢它。 目标操作系统是多个,Windows,Linux和Mac是最小的,但任何带有JVM的GUI系统都是真正需要的(因此实际命令行的用户可configuration性)。 有谁知道如何使启动的程序完全独立于JVM执行? 编辑回应评论 启动代码如下。 代码可以启动位于特定行和列的编辑器,也可以启动存档查看器。 在configuration的命令行中引用的值被视为ECMA-262编码,并被解码,引号被剥离以形成所需的exec参数。 发射发生在美国东部时间。 static Throwable launch(String cmd, File fil, int lin, int col) throws Throwable { String frs[][]={ { "$FILE$" ,fil.getAbsolutePath().replace('\\','/') }, { "$LINE$" ,(lin>0 ? Integer.toString(lin) : "") }, { "$COLUMN$",(col>0 ? Integer.toString(col) : "") }, }; String[] arr; // array of parsed […]
我遇到这篇文章,讨论为什么在Java中打破了双重检查locking范例。 是范例有效的.NET(特别是C#),如果variables被宣布为volatile ?
我有一个长期生活的应用程序与频繁的内存分配 – 释放。 任何malloc实现返回将内存释放回系统? 在这方面,什么是这样的行为: ptmalloc 1,2(glibc默认)或3 dlmalloc tcmalloc(谷歌线程malloc) solaris 10-11默认的malloc和mtmalloc FreeBSD 8默认的malloc(jemalloc) 囤地malloc? 更新 如果我的应用程序的内存消耗在白天和夜晚可能会非常不同(例如),我可以强制任何malloc将释放的内存返回给系统吗? 没有这样的返回释放内存将被换出,并在很多时候,但这样的内存只包含垃圾。
我在Playground中使用Swift 3,Xcode 8.0: import Foundation class Person: NSObject, NSCoding { var name: String var age: Int init(name: String, age: Int) { self.name = name self.age = age } required convenience init(coder aDecoder: NSCoder) { let name = aDecoder.decodeObject(forKey: "name") as! String let age = aDecoder.decodeObject(forKey: "age") as! Int self.init( name: name, age: age ) } […]