标签: units-of-measurement

是否可以将 ggplot 与 R 中的单位包一起使用?

单位库简化了单位的使用。据我所知,使用单位绘图适用于基本图,但不适用于 ggplot。有什么建议?

library(units)

# Take cars data frame: stopping dist (ft) vs speed (mph)
plot(cars)

# units + base plot
Distance = set_units(cars$dist, ft)
Speed = set_units(cars$speed, mph)
plot(x=Speed, y=Distance) #Clean

# units + ggplot
library(ggplot2)
df = cars
df$Disance = set_units(df$dist, ft)
df$Speed = set_units(df$speed, mph)

qplot(x=Speed, y=Distance, data=df)
# Error in Ops.units(x, range[1]) : 
#   both operands of the expression should be "units" objects
Run Code Online (Sandbox Code Playgroud)

r units-of-measurement ggplot2

2
推荐指数
1
解决办法
300
查看次数

D3D12 CreateHeap对齐,MSDN使用1024还是1000来定义KB

我正在尝试在 DirectX12 中使用CreateHeapand 。PlacedResources然而,对于 CreateHeap 来说,它需要一个D3D12_HEAP_DESC“应用程序应该传递SizeInBytes(的字段D3D12_HEAP_DESC)值,该值是有效对齐的倍数”的地方。然后他们去显示一个对齐D3D12_DEFAULT_RESOURCE_PLACEMENT_ALIGNMENT #defined as 64KB.,其中说 64KB 是对齐。

Microsoft DirectX12 是否使用 65536 字节作为 64KB 或 64000 字节的定义(因此基本上 1024 或 1000 字节是 Microsoft 的 KB 定义)?我不想浪费任何字节,而且我不知道在哪里可以找到微软这些类型单位的定义。正如维基百科显示1024 KB作为千字节的传统单位,因此微软标准是否是最新的也是一个问题。

directx msdn units-of-measurement visual-c++ directx-12

2
推荐指数
1
解决办法
143
查看次数

C++ 概念:要求策略类中存在静态变量

我想约束策略类的模板参数。\n也就是说,当我调用 时Foo<policy>,如果策略类不满足我想要的要求,我希望编译器在此处停止。

\n

完整的非工作示例

\n

为了简化问题,我们只考虑策略类必须声明一个静态变量的要求,该静态变量本身满足另一个概念(这里是mp-units 库中的 Acceleration 概念) 。

\n
#include <units/isq/si/si.h>\n\nusing units::isq::Acceleration;\n\n// A policy\nstruct earth\n{\n    // requirement seems to be fulfilled\n    static inline constexpr Acceleration auto gravity = standard_gravity<>;\n};\n\n// Let\'s define a concept because I will need soon to use a set of more than 1 requirements\ntemplate <typename T>\nconcept SphericBody = requires(T)\n{\n  { T::gravity } -> Acceleration;\n};\n\n// The host class that has a constraint of the template argument\ntemplate<SphericBody T>\nclass Foo\n{\n  // ...\n}\n\nint main()\n{\n  Foo<earth> …
Run Code Online (Sandbox Code Playgroud)

c++ units-of-measurement c++-concepts

2
推荐指数
1
解决办法
1290
查看次数

FPGA测量准确的时间

我们正在检查在FPGA与普通Quad x86计算机上运行的算法的速度有多快.

现在在x86,我们运行算法很多次,并采用中位数来消除操作系统开销,这也是"清除"错误的曲线.那不是问题.

FPGA算法中的度量是循环的,然后采用循环到时间,FSMD无论如何都很容易计算周期......

我们认为计数周期太过"纯粹"测量,这可以在理论上完成,而不需要在真实的FPGA中进行真正的测量或运行算法.

我想知道是否存在一篇论文或一些想法,来做一个实时测量.

measurement fpga units-of-measurement

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

计量单位的界限/域

我发现F#测量单位的想法非常吸引人.然而,通常情况是某些单位具有他们所居住的特定域.例如,距离是正数,温度大于开尔文零,概率在0和1之间,等等 - 但是我没有看到内置任何内容来表示这个概念,并验证特定值是特定单元的有效度量.计量单位是否支持这样的事情(我不这么认为),如果没有,是否有推荐的方法来实现这种行为?

validation f# units-of-measurement

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

带有度量单位转换的F#类型扩展导致奇怪的错误

我有一个函数,可以从我自己的3D矢量(支持度量单位)实现转换为XNA的实现:

type Vector3<[<Measure>]'a> with
    member inline v.ToXna() =
        Microsoft.Xna.Framework.Vector3(v.x / 1.f<_>, v.y / 1.f<_>, v.z / 1.f<_>)
Run Code Online (Sandbox Code Playgroud)

当我编译它时,我得到一个奇怪的错误:

签名和实现不兼容,因为类/签名中的type参数与成员/实现中的类型参数具有不同的编译时要求

inline似乎是必要的; 没有它,我收到此错误:

此构造使代码不如类型注释所指示的那样通用.度量单位变量'a已被约束为度量'm'.

知道发生了什么事吗?

编辑要回答@ svick的问题,Vector3定义为:

type Vector3<[<Measure>]'u> =
    struct
        val x:float32<'u>
        val y:float32<'u>
        val z:float32<'u>
        new(x, y, z) = { x = x; y = y; z = z }
    end
Run Code Online (Sandbox Code Playgroud)

我也有一些类型推断问题,将其定义为正常函数:

let vector3 (v:DumpEngine.Vector3<_>) =
    Vector3(v.x / 1.f<_>, v.y / 1.f<_>, v.z / 1.f<_>)
Run Code Online (Sandbox Code Playgroud)

导致该函数为Vector3 <1> - > Microsoft.Xna.Framework.Vector3,这使得它非常不可用.不过,我不确定这是一个相关的问题.

f# units-of-measurement type-extension

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

在Python中将字符串转换为'unit'对象

在这个问题中,"单位"是指物理量中使用的"度量单位".

我想安全地解析包含物理量(例如'23 kg')的不可信用户输入字符串.我想使用一个可用于Python的软件包(如UnumQuantities),因为它们负责单元之间的转换,简化数学表达式中包含的单元,减少到基本单元,但我找不到办法将字符串转换为除了使用之外的(上述包的)对象eval(),这似乎是不安全的.

例如,假设kg并且cm绑定到Unum包对象并引用千克和厘米单位,我需要一个能够从字符串返回Unum包对象的函数,如:

cast_to_unit("100 kg/cm")

要么

"100 kg/cm".asUnit()

  1. 有没有办法从提到的包中获得这样的功能?如果不,
  2. 有没有办法安全使用 eval()?如果不,
  3. 有没有其他包(甚至不是在Python中)具有这样的功能?

python string casting units-of-measurement

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

我什么时候应该使用sp,dp,px,in和mm?(机器人)

有许多不同的测量单位,何时应该使用哪些?到目前为止,我发现了sp,dp,px,in和mm.还有我应该知道的吗?有没有特殊情况(例如对话)?

其他问题没有明确给出示例或解释何时或为何使用这些单位.

我知道这不是主题,但有些人可以回答我没有得到太多关注的另一个问题/sf/ask/1772226571/ a-compound-view-android(我真的需要一个答案)

android units-of-measurement

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

CSS尺寸 - 1厘米!= 1厘米

有一个好奇的时间弄清楚为什么这似乎不起作用.

我应用了CSS背景渐变,例如:

.element {
  width: 10cm;
  height: 5cm;
  background-size: 1cm;
  background-image: repeating-linear-gradient(
    90deg,
    red,
    black
  );
}
.child {
  width: 1cm;
  height: 1cm;
  background: green;
  outline: 1px solid black;
  float:left;
}
.child:before {
  content: "1cm";
  color: white;
}
Run Code Online (Sandbox Code Playgroud)
<div class="element">
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

现在,在查看时(这是来自Chrome,但我在其他浏览器中看到类似的结果),这些行与该元素不匹配.我希望看到10个均匀分布的"背景"重复,最右边的排列与元素的边缘完全一致.

这个额外空间的原因是什么?

http://codepen.io/anon/pen/JoLVem

在codepen示例中,我有一个具有我想要的背景的元素,并且该元素有10个子元素.父母身高10厘米,儿童身高1厘米.正好10个孩子适合父母,因为1cm*10 = 10cm.

然而,背景是重复1cm宽的梯度.这应该导致在10cm宽的元素上精确地重复10次背景重复.如您所见,每个背景图像都不到1厘米.

css units-of-measurement

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

将类型附加到标量的首选机制?

[编辑:改变米/码到foo/bar; 这不是关于将米转换为码.]

将类型附加到标量的最佳方法是double什么?典型的用例是度量单位(但我不是在寻找实际的实现,boost有一个).

这看起来很简单:

template <typename T>
struct Double final
{
    typedef T type;
    double value;
};

namespace tags
{
    struct foo final {};
    struct bar final {};
}
constexpr double FOOS_TO_BARS_ = 3.141592654;
inline Double<tags::bar> to_bars(const Double<tags::foo>& foos)
{
    return Double<tags::bar> { foos.value * FOOS_TO_BARS_ };
}

static void test(double value)
{
    using namespace tags;
    const Double<foo> value_in_foos{ value };    
    const Double<bar> value_in_bars = to_bars(value_in_foos);
}
Run Code Online (Sandbox Code Playgroud)

那是真的吗?或者这种方法是否存在隐藏的复杂性或其他重要因素?

这似乎远远超过

   inline double foos_to_bars(double foos)
   {
      return foos …
Run Code Online (Sandbox Code Playgroud)

c++ templates types units-of-measurement

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