小编Den*_*ang的帖子

在Python中将DICOM结构轮廓作为数组获取

因此,如果我有一个图像(CT,MRI等)或甚至放射治疗的剂量,我可以通过以下方式将剂量或图像值拉出到阵列中:

import dicom

ds = dicom.read_file("dicom_file.dcm")

print ds.pixel_array
Run Code Online (Sandbox Code Playgroud)

这非常简单,让我能够按照自己的意愿操纵图像/剂量.但是,通常您还有一个结构文件,其中包含不同的轮廓结构,您可以在图像查看器中查看这些结构或类似的结构.再次,非常简单.

我的问题是我也希望这些单独的结构也是一个数组.如果我运行相同的代码我就会得到TypeError: No pixel data found in this dataset.

我猜测结构DICOM文件不像剂量/图像DICOM文件那样"制作".

那么有一个我无法找到的解决方案吗?我也看了一下这个dicompyler_core软件包,但从我看到的情况来看,没有任何办法可以"只是"将不同的结构输出到数组中.

python arrays dicom pydicom

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

IE11使背景图像文本模糊

我正在一个网站上工作,我在按钮上使用图像精灵.在我试过的其他浏览器中,除了IE11之外,我的精灵上的文字应该是清晰的,但是在IE11中,文字变得模糊(见图片).

IE11 其他浏览器

模糊的是IE11 ofc.精灵的宽度为189px,高度为378px.我使用以下CSS:

button {
    width:189px;
    height:189px;
    background-image:url('../images/kontakt-os.png');
    background-position: top;
    cursor:pointer;
    border-radius: 100px;
}

button:hover {
    background-position: bottom;
    -webkit-box-shadow: 0px 10px 1px 1px rgba(179, 47, 1, 1.0);
    -moz-box-shadow: 0px 10px 1px 1px rgba(179, 47, 1, 1.0);
    box-shadow: 0px 0px 10px 1px rgba(179, 47, 1, 1.0);
}
Run Code Online (Sandbox Code Playgroud)

那么这只是一个IE漏洞,还是我真的可以做点什么呢?

提前致谢.

编辑:我可能只是添加,如果我只是插入相同的图像,因为<img src="lala.png">文本不模糊.它只适用于背景:/

css sprite background-image internet-explorer-11

7
推荐指数
2
解决办法
3654
查看次数

影响显示的 div 的网格行间隙:无

我目前正在使用 CSS 网格,并且我正在grid-row-gap很多column-row-gap地方使用。我的问题是,在进行媒体查询时,某些元素/div 不会以较小的分辨率显示,我通常只是将它们设置为display: none. 但是,如果我没有记错的话,即使可以看到该元素,行或列间隙功能仍然适用于“隐藏”元素。

有什么办法可以解决这个问题,还是我在这里做错了什么?

编辑:

好吧,看起来display: none不会影响网格行间隙 - 这是有道理的。但我找到了一个小解决方法,即在分辨率发生变化时删除网格间隙并添加填充。这似乎奏效了。

感谢所有的答案。

css css-grid

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

颜色条使子图的大小比其余部分更小

我正在尝试制作一个子图,其中三个图彼此相邻,然后在最后一个图的右侧有一个颜色条(见图)。

我用这段代码来做:

import numpy as np
import matplotlib.pyplot as plt
from matplotlib import rcParams
from mpl_toolkits.axes_grid1 import make_axes_locatable

x = np.linspace(1, 100, 100)
y = np.linspace(0.1, 10, 100)
z = x[:, np.newaxis] + y[np.newaxis, :]

fig, ax = plt.subplots(1, 3, figsize=(12, 4))

ax[0].contourf(x, y, z)
ax[0].set_xlabel('x')
ax[0].set_ylabel('y')

ax[1].contourf(x, y, z)
ax[1].set_xlabel('x')
ax[1].set_ylabel('y')

plt.contourf(x, y, z)
ax[2].set_xlabel('x')
ax[2].set_ylabel('y')

divider = make_axes_locatable(plt.gca())
cax = divider.append_axes("right", "10%", pad="3%")

plt.colorbar(cax=cax)
plt.tight_layout()
plt.show()
Run Code Online (Sandbox Code Playgroud)

我的问题是:1)我认为前两个图不是完全正方形的(我希望它们是正方形的),2)包含颜色条的最后一个图的宽度比其他两个图小。是否有一些简单的技巧可以解决这个问题,或者我是否必须手动进入并给一个比另一个多一点的填充等等。

在此输入图像描述

python matplotlib

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

何时直接在HTML而不是CSS中进行样式设置

我试图在这个上搜索一个主题,但我没有找到任何主题,所以我想我会继续前进.

我的问题是,如果只是将你的风格直接放在你的HTML文件中,而不是使用.css文件,那么它是正确的.

我的意思是,当你有很多需要重复的东西或在几个页面上使用时,我觉得使用你的.css文件是非常有用的.但在我的情况下,我有一个页面,我要打造一些东西,我很确定只会在那个页面上.这是div的宽度,高度和小东西.

为了告诉你我的意思,这里是代码:

<div style="margin:0px auto; width:600px;">
    <div style="float:left">
        <p class="InputFieldsText">Brugernavn</p>
        <div class="InputFields"><input name="Text1" type="text" class="Medium" placeholder="Din e-mail adresse" /></div>
        <p class="InputFieldsUnderText"><a href="#">Glemt dit brugernavn?</a></p>

        <p class="InputFieldsText">Password</p>
        <div class="InputFields"><input name="Text1" type="password" class="Medium" /></div>
        <p class="InputFieldsUnderText"><a href="#">Glemt dit password?</a></p>

        <input onclick="window.location='user_page.html'" class="LargeIndent" name="Submit1" type="button" value="Log ind" />
    </div>
    <div style="float:left; width:172px; text-align:center">            
        <img alt="" height="128" src="images/lock.png" width="128">
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

所以,正如你所看到的,在一些div中我直接设置了它,而不是为我的班级提出一个名字并放在那里.我知道这样做并没有错,因为如果我在我的.css文件中使用它并且调用了一个类,它会出现相同的结果,但是有一个"指南"或者这个和这个不推荐的东西等等. .

希望你理解我的问题.真的不是那么大的交易,我总是想知道:)

问候

html css

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

获取 x 值不相同的多条曲线的平均曲线

我有几个包含许多 x 和 y 值的数据集。值少得多的示例如下所示:

data_set1:

x1          y1        
---------   ---------   
0           100
0.0100523   65.1077
0.0201047   64.0519
0.030157    63.0341
0.0402094   62.1309
0.0502617   61.3649
0.060314    60.8614
0.0703664   60.3555
0.0804187   59.7635
0.0904711   59.1787
Run Code Online (Sandbox Code Playgroud)

data_set2:

x2          y2        
---------   ---------   
0           100
0.01        66.119
0.02        64.4593
0.03        63.1377
0.04        62.0386
0.05        61.0943
0.06        60.2811
0.07        59.5603
0.08        58.8908
Run Code Online (Sandbox Code Playgroud)

所以这里(对于本例)我有两个包含 10 个 x 值和 y 值的数据集。y 值始终不同,但在某些情况下 x 值会相同,有时它们会不同 - 正如本例所示。虽然不是很多,但它们仍然是不同的。将这两个数据集绘制成图表会产生两条不同的曲线,我现在想绘制两条曲线的平均曲线。如果 x 值相同,我将只取 y 值的平均值并将它们与 x 值进行比较,但如上所述,它们有时不同,有时相同。有没有某种方法可以推断,或者类似的东西,这样我就可以对值进行平均(同样,对于许多数据集)而无需“只是猜测”或说“它们几乎相同,所以只需平均就可以了y 值”。外推法似乎是一种可行的方法,但我从未在 python 中使用过它,也许还有更好的方法来做到这一点?

python plot extrapolation

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

图中曲线之间的阴影区域

所以我有几条曲线由相同的 x 值定义,但不同的 y 值。下图由 21 条不同的曲线组成。其中10条是虚线,1条是实线,最后10条是虚线。

然而,从图中可以看出,它在一张图中相当多。你真的看不到到处都是什么。所以我想要的是在前 10 行和最后 10 行之间有一个阴影区域,我认为这会让眼睛更容易。

但我不太确定如何开始?

现在我的代码如下:

import os
import numpy as np
import matplotlib.pyplot as plt

structures = ['Rectum']
patients = ["426"]

color_map = 'nipy_spectral'
color = {'PTV':0.16, 'Rectum':0.80, 'Bladder':0.96}

legends = ['PTV', 'Rectum', 'Bladder']

x = np.loadtxt('dose_gy.txt')


for plot, patient in enumerate(patients):
    plot += 1
    PATH_TO_YDATA = 'results/Two_Fields/DVH'
    for f in sorted(os.listdir(PATH_TO_YDATA), key=lambda f: f.split('_')[-2]):
        if f.split('_')[-2] == patient:
            for structure in structures:
                if f.split('_')[2] == structure:
                    y = np.loadtxt(PATH_TO_YDATA + …
Run Code Online (Sandbox Code Playgroud)

python matplotlib

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

根据宽度/大小对多个 Flexbox 行中的元素进行排序

假设我有一组这样的列表项(某种类别):

ul.categoryList {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 180px;
}

ul.categoryList > li {
  list-style: none;
}
Run Code Online (Sandbox Code Playgroud)
<ul class="categoryList">
  <li>Literature</li>
  <li>Science Fiction and Fantasy</li>
  <li>Harry Potter</li>
  <li>Movies and Films</li>
  <li>Books</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

<ul>是在 a 内<div>max-width如果调整窗口大小或在不同的分辨率/设备(手机、平板电脑等)上, a 可以更改。

正如您所看到的,某些列表项比其他项长。假设此容器<ul>只能包含列表项Science Fiction and Fantasy和更多内容,因此下一项将转到下一行,因为它不适合同一行。

正如您可能看到的那样,问题在于LiteratureBooks可能位于同一行,但由于它们不连续,因此它们最终会出现在单独的行上,这同样适用于其他项目。

因此,我没有将一些最短的项目放在一起以消耗更少的行,而是得到 5 行(实际上每个项目一个),这很消耗空间。

有没有什么办法解决这一问题?可以只用 CSS 来完成还是需要 JavaScript 来完成?

javascript css sorting listitem flexbox

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

使用calc()中的分数(fr)给出"无效的属性值"

我正在尝试calc()在使用CSS Grid时使用某些宽度.所以我正在尝试的一件事是:

grid-template-columns: calc(1fr - 50px) calc(1fr - 50px);
Run Code Online (Sandbox Code Playgroud)

因为我希望它是两个分数,但删除50px,因为它用于填充等.但是,在执行此操作时,Chrome会说:"无效的属性值".

不能calc()用于分数,或者我在这里做错了什么?

css css3 css-grid css-calc

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

删除重复行但有条件

我有一个看起来像这样的数据框:

df =

date         col1    col2    col3    col4
-----------------------------------------
2022/30/01   2       2       4       5
2022/30/01   2       2       4       5
2022/30/01   0       0       1       2
2022/30/01   0       0       1       2
2022/30/01   3       2       4       2
2022/30/01   5       8       4       3
Run Code Online (Sandbox Code Playgroud)

所以基本上我的前两行是相同的,接下来的两行也是相同的,最后两行是不同的。

我想做的是删除重复的行,但只有那些col1col2等于 0 的行,即结果数据框应该是:

df_final =

date         col1    col2    col3    col4
-----------------------------------------
2022/30/01   2       2       4       5
2022/30/01   2       2       4       5
2022/30/01   0       0       1       2
2022/30/01   3       2       4       2
2022/30/01   5       8       4       3 …
Run Code Online (Sandbox Code Playgroud)

python pandas

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