小编Kev*_* D.的帖子

FSharpChart.SaveAs()在图表渲染完成之前调用时保存空白图像

在F#Interactive中运行时,我希望以下代码创建一个简单的饼图并将其保存到磁盘:

let pie = FSharpChart.Pie([("Apples",1);("Oranges",2);("Bananas",3)])
FSharpChart.SaveAs "test.png" ChartImageFormat.Png pie
Run Code Online (Sandbox Code Playgroud)

但是,实际保存在"test.png"中的是一个空白图像.如果我将图表管道输入FShartChart.SaveAs函数,也会发生同样的情况.但是,如果我首先只执行图表创建代码并在手动执行SaveAs之前给图表提供时间,则图像会按预期保存.

有没有办法阻止对FSharpChart.Pie的调用,直到渲染完成?我在Visual Studio 2013中使用FSharpChart.fsx版本0.60.

f# dotnetcharting f#-charting

6
推荐指数
1
解决办法
827
查看次数

为什么.NET IL总是创建新的字符串对象,即使更高级别的代码引用现有的?

背景: 我们有一个包含数千个伪代码函数的XML文档.我编写了一个实用程序来解析这个文档并从中生成C#代码.这是生成的代码的大大简化的片段:

public class SomeClass
{
    public string Func1() { return "Some Value"; }
    public string Func2() { return "Some Other Value"; }
    public string Func3() { return "Some Value"; }
    public string Func4() { return "Some Other Value"; }
    // ...
}
Run Code Online (Sandbox Code Playgroud)

重要的一点是每个字符串值可能会被多种方法返回.我假设通过进行一个小的更改,以便方法将返回对静态成员字符串的引用,这将减少程序集大小并减少程序的内存占用.例如:

public class SomeClass
{
    private const string _SOME_VALUE = "Some Value";
    private const string _SOME_OTHER_VALUE = "Some Other Value";
    // ...

    public string Func1() { return _SOME_VALUE; }
    public string Func2() { return _SOME_OTHER_VALUE; }
    public …
Run Code Online (Sandbox Code Playgroud)

.net

4
推荐指数
1
解决办法
451
查看次数

标签 统计

.net ×1

dotnetcharting ×1

f# ×1

f#-charting ×1