对于情节:在绘制列时如何手动更改图例项?简短答案:一些细节:完整答案:1为什么px.line(data,x="year",y="pop1",title='Population')图12如何手动修复图例
对于情节:在绘制列时如何手动更改图例项? 简短答案:一些细节:完整答案: 1为什么px.line(data, x="year", y="pop1", title='Population') 图1 2如何手动修复图例并不断添加痕迹?图2.1 图2.2 完整代码:感兴趣的读者,本文将提供您所需要的所有信息,并且为您提供关于.net核心Web应用程序docker映像如何在Mac OS上运行? 简短答案:长答案:、asp.net – 什么时候调用Application_End,我该如何手动导致这个?、asp.net – 如何手动调用ValidationAttributes? (DataAnnotations和ModelState)、Automatically populating $HTTP_RAW_POST_DATA is deprecated的宝贵知识。
本文目录一览:- 情节:在绘制列时如何手动更改图例项? 简短答案:一些细节:完整答案: 1为什么px.line(data, x="year", y="pop1", title='Population') 图1 2如何手动修复图例并不断添加痕迹?图2.1 图2.2 完整代码:
- .net核心Web应用程序docker映像如何在Mac OS上运行? 简短答案:长答案:
- asp.net – 什么时候调用Application_End,我该如何手动导致这个?
- asp.net – 如何手动调用ValidationAttributes? (DataAnnotations和ModelState)
- Automatically populating $HTTP_RAW_POST_DATA is deprecated
情节:在绘制列时如何手动更改图例项? 简短答案:一些细节:完整答案: 1为什么px.line(data, x="year", y="pop1", title='Population') 图1 2如何手动修复图例并不断添加痕迹?图2.1 图2.2 完整代码:
如何解决情节:在绘制列时如何手动更改图例项? 简短答案:一些细节:完整答案: 1为什么px.line(data, x="year", y="pop1", title=''Population'') 图1 2如何手动修复图例并不断添加痕迹?图2.1 图2.2 完整代码:?
多年来,我拥有以下两个国家的熊猫数据框:
>>>year pop1 pop2
0 1 1.000000e+08 1.000000e+08
1 2 9.620000e+07 9.970000e+07
2 3 9.254440e+07 9.940090e+07
3 4 8.902771e+07 9.910270e+07
4 5 8.564466e+07 9.880539e+07
我想创建绘图线,以便y值会弹出列:
fig = px.line(data,x="year",y="pop1",title=''Population'')
fig.add_scatter(x=data[''year''],y=data[''pop2''],mode=''lines'')
fig.show()
结果如下:
我的问题是图例仅显示一行,并且似乎无法控制(例如,将其从mtrace更改为pop1和pop 2)。我已经看到可以使用“颜色”选项,但是在绘制列时似乎是不可能的。
我在这里的最终目标是能够控制图例-将列名(pop1和pop2)作为图例项。
解决方法
简短答案:
要使解决方案接近您的原始设置,您可以执行以下操作:
fig = px.line(data,x="year",y="pop1",title=''Population'')
fig.data[0].name="pop1"
fig.update_traces(showlegend=True)
fig.add_scatter(x=data[''year''],y=data[''pop2''],mode=''lines'',name = "pop2")
一些细节:
@TeejayBruno评论表中的建议将解决您的问题。但是那里描述的方法与您描述的步骤根本不同。而且我怀疑您为什么要先使用
来建立图形是有原因的fig = px.line(data,title=''Population'')
然后使用以下命令添加新跟踪:
fig.add_scatter(x=data[''year''],mode=''lines'')
所以我认为我要阐明为什么第一步后图例“丢失”的原因,然后在步骤2中添加更多迹线时如何确保图例中包含“ pop1”
完整答案:
1。为什么px.line(data,title=''Population'')
缺少图例
对此有一个很好的解释。看下面的情节。当px.line
仅拾取一条轨迹时,它决定图例是多余的,并且可以更自然地将信息显示为y轴的标签。我非常同意剧情开发人员在此处所做的决定:
图1
但是,当用户决定通过添加通过fig.add_scatter()
的迹线来建立该图形时,这没有多大意义。这就是您偶然发现的确切内容。
2。如何手动修复图例并不断添加痕迹?
当您将fig = px.line(data,y=["pop1","pop2"],title=''Population'')
与多个y类别一起使用时,px.line
可以理解,将所有这些信息显示为y轴的标签名称已经没有多大意义了,并且会像下图中的绿色圆圈。同时,在红色圆圈中,y轴标签被重命名为"value"
:
在幕后还发生了什么,fig
对象的数据属性分别命名为"pop1"
和"pop2"
:
<bound method BaseFigure.show of Figure({
''data'': [{''hovertemplate'': ''variable=pop1<br>year=%{x}<br>value=%{y}<extra></extra>'',''legendgroup'': ''pop1'',''line'': {''color'': ''#636efa'',''dash'': ''solid''},''mode'': ''lines'',''name'': ''pop1'',''orientation'': ''v'',''showlegend'': True,''type'': ''scatter'',''x'': array([1,2,3,4,5],dtype=int64),''xaxis'': ''x'',''y'': array([1.000000e+08,9.620000e+07,9.254440e+07,8.902771e+07,8.564466e+07]),''yaxis'': ''y''},{''hovertemplate'': ''variable=pop2<br>year=%{x}<br>value=%{y}<extra></extra>'',''legendgroup'': ''pop2'',''line'': {''color'': ''#EF553B'',''name'': ''pop2'',
其中包含解决方案,您可以根据需要调整图例属性:
1。。请确保使用''name'': ''pop1''
的第一条跟踪记录是fig.data[0].name="pop1"
。
2。。设置图形以显示带有fig.update_traces(showlegend=True)
的图例中的迹线名称(图2.1)。
3。。使用fig.add_scatter(x=data[''year''],name = "pop2")
包括所有连续跟踪的名称(图2.2)。
4。。将y轴标签重命名为您想要使用的名称,例如fig.update_yaxes(title=dict(text=''People''))
。
图2.1
图2.2
完整代码:
import plotly.graph_objs as go
import plotly.express as px
import pandas as pd
data = pd.DataFrame({''year'': {0: 1,1: 2,2: 3,3: 4,4: 5},''pop1'': {0: 100000000.0,1: 96200000.0,2: 92544400.0,3: 89027710.0,4: 85644660.0},''pop2'': {0: 100000000.0,1: 99700000.0,2: 99400900.0,3: 99102700.0,4: 98805390.0}})
fig = px.line(data,title=''Population'')
#fig = px.line(data,title=''Population'')
fig.data[0].name="pop1"
fig.update_traces(showlegend=True)
fig.add_scatter(x=data[''year''],name = "pop2")#
fig.update_yaxes(title=dict(text=''People''))
fig.show()
.net核心Web应用程序docker映像如何在Mac OS上运行? 简短答案:长答案:
简短答案:
因为.NET Core是跨平台的。 docker可在Mac和Windows上运行(从理论上讲,与Linux一样),该映像在任何平台上都可以正常工作。
mcr.microsoft.com/dotnet/core/sdk:3.1与平台有关。根据您选择运行Docker的体系结构,它将选择Windows Nano服务器或Linux模板。
长答案:
Docker不是VM技术。这是一项Linux功能,可为您提供隔离的环境。在Windows和Mac上无法使用Docker。 Docker使用Linux功能并在Linux环境中插入应用程序(及其相关的依赖项),并产生了运行该应用程序所需的资源(网络,RAM,磁盘,软件框架)的幻觉。
在Windows和Mac上。 Docker安装了Linux VM。并在VM内运行Docker infra。
像docker info
这样的命令将提供更多详细信息。下图显示了它正在Linux上运行。
切换到Windows docker将为docker info
命令提供不同的输出。
asp.net – 什么时候调用Application_End,我该如何手动导致这个?
更新:我知道web.config和BIN文件夹更改.我对应用程序闲置一段时间后关闭池而不触及任何内容感兴趣.
解决方法
IIS Recycling Settings http://i41.tinypic.com/2j13k1v.png
IIS Advanced Settings http://i42.tinypic.com/s2gz6t.png
asp.net – 如何手动调用ValidationAttributes? (DataAnnotations和ModelState)
目前,我基本上遍历所有ValidationAttribute实例中的每个属性加载并尝试使用Validate / IsValid函数进行验证,但这似乎对我没有用.
作为一个例子,我有一个模型,如:
public class HobbyModel { [required(AllowEmptyStrings = false,ErrorMessage = "Do not allow empty strings")] [displayName("Hobby")] [DataType(DataType.Text)] public string Hobby { get; set; } }
检查属性的代码是:
object[] attributes = propertyInfo.GetCustomAttributes(true); TypeConverter typeConverter = TypeDescriptor.GetConverter(typeof(ValidationAttribute)); bool isValid = false; foreach (object attr in attributes) { ValidationAttribute attrib = attr as ValidationAttribute; if (attrib != null) { attrib.Validate(obj,propertyInfo.Name); } }
我调试了代码,模型确实有3个属性,其中2个是从ValidationAttribute派生的,但是当代码通过Validate函数(带有空值或空值)时,它会按预期抛出异常.
我期待我做一些愚蠢的事情,所以我想知道是否有人使用过这个功能并且可以提供帮助.
提前致谢,
杰米
解决方法
Validate
方法,而不是属性值.以下更有可能按预期工作(尽管显然不适用于索引属性):
attrib.Validate(propertyInfo.GetValue(obj,null),propertyInfo.Name);
不过,你肯定会更容易using the Validator class作为Steven suggested.
Automatically populating $HTTP_RAW_POST_DATA is deprecated
重新搭建了一个PHP运行环境,发现运行项目时报如下错误:
Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a future version. To avoid this warning set ‘always_populate_raw_post_data’ to ‘-1’ in PHP.ini and use the PHP://input stream instead. in UnkNown on line 0
查找原因后,发现错误原因如下: 官方在PHP5.6就把$HTTP_RAW_POST_DATA废弃了,而且在PHP7中把它移除了。因为这个参数影响性能,所以要废弃掉,官方建议用PHP://input来代替。
解决办法: 修改PHP.ini
always_populate_raw_post_data = -1
今天的关于情节:在绘制列时如何手动更改图例项? 简短答案:一些细节:完整答案: 1为什么px.line(data, x="year", y="pop1", title='Population') 图1 2如何手动修复图例并不断添加痕迹?图2.1 图2.2 完整代码:的分享已经结束,谢谢您的关注,如果想了解更多关于.net核心Web应用程序docker映像如何在Mac OS上运行? 简短答案:长答案:、asp.net – 什么时候调用Application_End,我该如何手动导致这个?、asp.net – 如何手动调用ValidationAttributes? (DataAnnotations和ModelState)、Automatically populating $HTTP_RAW_POST_DATA is deprecated的相关知识,请在本站进行查询。
本文标签: