百分比_百分比柱状图 - CSDN
精华内容
参与话题
  • 【Python】百分比显示

    千次阅读 2019-02-21 18:08:54
    Python 3.6.7 函数: def percentage(i: int, n: int): print('\r{}{}%'.format(['/', '-', '\\'][i % 3] if n-i else '', int(i/n*100)), end='' if n-i else '\n') ...for i in range(1...

    Python 3.6.7

    函数: 

    def percentage(i: int, n: int):
        print('\r{}{}%'.format(['/', '-', '\\'][i % 3] if n-i else '', int(i/n*100)), end='' if n-i else '\n')
    

     效果:

    import time
    
    for i in range(100):
        percentage(i + 1, 100)
        time.sleep(0.1)

     

    percentage.gif

    其实没上图这么快,csdn对图片大小有限制,这个GIF清晰度太高了所以时间短速度快了,建议自己试一下

    展开全文
  • 计算百分比.js

    2019-07-29 09:50:51
    此计算为js前台计算它可以计算百分比。如果是在前台计算的话可以使用一下。
  • 百分比的算法

    千次阅读 2013-06-07 11:49:21
    http://www.189works.com/article-48092-1.html /// /// 得到百分比函数 /// /// /// /// string getPercent( object A, object B ) { double rate = new double(); try {

    http://www.189works.com/article-48092-1.html

    /// <summary>
    
    /// 得到百分比函数 
    /// </summary> 
    /// <param name="A"></param> 
    /// <param name="B"></param> 
    /// <returns></returns>
     
    
    string getPercent( object A, object B ) 
        { 
            double rate = new double(); 
            try 
            { 
                rate = Convert.ToDouble( A ) / Convert.ToDouble( B ); 
            } 
            catch (Exception exec) 
            { 
                return null; 
            } 
            return rate.ToString( "p" ); //格式为12.23% 
        }
    


     

    展开全文
  • 各种百分比的指向

    2018-08-18 10:20:07
    相对于父级宽度(static、relative的元素计算时不包含父级padding,absolute、fixed的元素会加上父级的padding)的: max-width、min-width、width、left、right、text-indent、padding、margin、grid-template-...

    相对于父级宽度(static、relative的元素计算时不包含父级padding,absolute、fixed的元素会加上父级的padding)的:

    max-widthmin-widthwidthleftrighttext-indentpaddingmargingrid-template-columnsgrid-auto-columnscolumn-gap 等;

     

    相对于父级高度(同上)的:

    max-heightmin-heightheighttopbottomgrid-template-rowsgrid-auto-rowsrow-gap 等;

     

    相对于自身宽高的:

    border-radiusbackground-sizeborder-image-widthtransform: translate()transform-originzoomclip-path 等;

     

    相对于主轴长度的:

    flex-basis 等;

     

    相对于继承font-szie的:

    font-size 等;

     

    相对于自身font-szie的:

    line-height 等;

     

    相对于line-height的:

    vertical-align 等;

     

    static、relative的父级即为 实际 父级元素

    如果自身设置 position: absolute,“父级”指:相对于离它最近的那个 position 不为 static (relative、absolute、fixed)的祖先元素,如果没有这样的元素,则相对于视口

    如果自身设置 position: fixed,“父级”指视口(父级不存在 transform 为非 none 值的情况下)。

     

    欢迎关注、点赞

    展开全文
  • 百分比布局

    千次阅读 2019-02-28 17:37:15
    今天使用的是:Android Percent Support Library 百分比布局兼容库: 如何使用百分比布局 1.添加依赖 dependencies { implementation 'com.android.support:percent:27.0.2' } 我的studio是6.0一下,所以将...

    今天使用的是:Android Percent Support Library  百分比布局兼容库:

    如何使用百分比布局

    1.添加依赖

    dependencies { 
    implementation 'com.android.support:percent:27.0.2'
    }

    我的studio是6.0一下,所以将implemention改为compile。有的时候添加studio可能会报错,这个时候看一下自己的 compileSdkVersion,因为我的是26,所以需要修改一下

    compile 'com.android.support:percent:26.0.0-alpha1'

    接下来在函数库里面我们主要用到两个类:

    • PercentRelativeLayout
    • PercentFrameLayout
    • 通过名字就可以看出,这是继承自FrameLayoutRelativeLayout两个容器类;  

    支持的属性有:

    • app:layout_heightPercent:用百分比表示高度
    • app:layout_widthPercent:用百分比表示宽度
    • app:layout_marginPercent:用百分比表示View之间的间隔
    • app:layout_marginLeftPercent:用百分比表示左边间隔
    • app:layout_marginRight:用百分比表示右边间隔
    • app:layout_marginTopPercent:用百分比表示顶部间隔
    • app:layout_marginBottomPercent:用百分比表示底部间隔
    • app:layout_marginStartPercent:用百分比表示距离第一个View之间的距离
    • app:layout_marginEndPercent:用百分比表示距离最后一个View之间的距离
    • app:layout_aspectRatio:用百分比表示View的宽高比

    这几个是重要的属性:

    • app:layout_aspectRatio="50%"
      app:layout_heightPercent="70%"
      app:layout_widthPercent="100%"
      app:layout_marginStartPercent="10%"
      app:layout_marginEndPercent="10%"


    接下来就是实际操作:

    <?xml version="1.0" encoding="utf-8"?>
    <android.support.percent.PercentRelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    
        <TextView
            android:id="@+id/row_one_item_one"
            android:layout_alignParentTop="true"
            android:background="#7700ff00"
            android:gravity="center"
            android:text="w:70%,h:20%"
            app:layout_heightPercent="20%"
            app:layout_widthPercent="70%"
            />
    
        <TextView
            android:id="@+id/row_one_item_two"
            android:background="#396190"
            android:layout_alignParentRight="true"
            android:gravity="center"
            android:text="w:30%,h:20%"
            app:layout_heightPercent="20%"
            app:layout_widthPercent="30%"
            />
    
        <ImageView
            android:id="@+id/row_two_item_one"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_below="@+id/row_one_item_one"
            android:background="#d89695"
            android:scaleType="centerCrop"
            android:src="@drawable/image_car"
            app:layout_heightPercent="70%" />
    
        <TextView
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_below="@id/row_two_item_one"
            android:background="#770000ff"
            android:gravity="center"
            android:text="width:100%,height:10%"
            app:layout_heightPercent="10%"
            app:layout_widthPercent="100%" />
    
    </android.support.percent.PercentRelativeLayout>

    效果图:

     

    实现原理:

    系统初始化布局都是通过LayoutInflater来实现的,比如在setContentView里面。LayoutParams在平时使用还是比较多的,其作用就是让父View决定如何摆放自己以及自己的宽高。当我们把child view写到布局里面,那么child view的LayoutParams由ViewGroup的generateDefaultLayoutParams来设置

    下面就是LayoutInflater为子View赋值LayoutParams的关键代码:

    void rInflate(XmlPullParser parser, View parent, final AttributeSet attrs,
        boolean finishInflate, boolean inheritContext) {
        //...
        while (((type = parser.next()) != XmlPullParser.END_TAG ||
            parser.getDepth() > depth) && type != XmlPullParser.END_DOCUMENT) {
    
            //...
            final View view = createViewFromTag(parent, name, attrs, inheritContext);
            final ViewGroup viewGroup = (ViewGroup) parent;
            final ViewGroup.LayoutParams params = viewGroup.generateLayoutParams(attrs);
            rInflate(parser, view, attrs, true, true);
            viewGroup.addView(view, params);
        //...
    }

    PercentRelativeLayout所以就实现了generateLayoutParams的方法,并且返回的是继承的RelativeLayout.LayoutParams,这样就保留了RelativeLayout原来属性。并且generateLayoutParams的方法参数是AttributeSet,里面就包含了我们声明的PercentLayout的属性值,例如layout_widthPercent等等。

    PercentRelativeLayout.LayoutParams在构造方法就通过PercentLayoutHelper对AttributeSet进行解析,解析的结果保存在自定义的数据结构PercentLayoutHelper.PercentLayoutInfo,里面包括了在概述里面说的所有属性。

    private PercentLayoutHelper.PercentLayoutInfo mPercentLayoutInfo;
    
    public LayoutParams(Context c, AttributeSet attrs) {
        super(c, attrs);
        mPercentLayoutInfo = PercentLayoutHelper.getPercentLayoutInfo(c, attrs);
    }
    

    另外,我们知道所有的LayoutParams都是继承ViewGoup.LayoutParams,里面有个方法是用来初始化View两个layout_width,layout_height:

    protected void setBaseAttributes(TypedArray a, int widthAttr, int heightAttr) {
        width = a.getLayoutDimension(widthAttr, "layout_width");
        height = a.getLayoutDimension(heightAttr, "layout_height");
    }
    

    如果我们没有在布局文件里面声明这两个属性,那么在LayoutInflater初始化的就会抛UnsupportedOperationException。由于使用了百分比的属性,所以这个属性就可以不需要,为了让其不抛异常,必须重写这个方法。

    PercentLayoutHelper#fetchWidthAndHeight就是让其在没有值的情况下让LayoutParams的width和height的值都为0。

    @Override
    protected void setBaseAttributes(TypedArray a, int widthAttr, int heightAttr) {
        PercentLayoutHelper.fetchWidthAndHeight(this, a, widthAttr, heightAttr);
    }
    

    初始化布局的时候已经把所有需要的数据都保持在了PercentLayoutInfo里面,接下来就到了我们熟悉的三大流程了:onMeasure->onLayout->onDraw,由于是ViewGroup,所以只需要关注前面两个即可。先来看onMeasure:

    @Override
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        mHelper.adjustChildren(widthMeasureSpec, heightMeasureSpec);
        super.onMeasure(widthMeasureSpec, heightMeasureSpec);
        if (mHelper.handleMeasuredStateTooSmall()) {
            super.onMeasure(widthMeasureSpec, heightMeasureSpec);
        }
    }
    

    adjustChildren的主要工作就是遍历所有的child view,通过child view的PercentLayoutHelper.LayoutParams的宽高百分比转换为实际的占用的像素宽高。并保存在对应child view的LayoutParams里,然后再调用RelativeLayout原有的onMeasure,就可以实现宽高的百分比转换。

    我们在前面读书笔记中View的工作原理measure的过程里面有提到,有时候我们在测量View的时候,如果父View最大能够给我们的空间小于我们需要的空间,就会给测量结果的高两位加上相应的状态表示MEASURED_STATE_TOO_SMALL。

    如果出现了这种情况,并且为layout_width和layout_height设置了wrap_content,就需要调用handleMeasuredStateTooSmall来处理,将宽或者高重新按照wrap_content的属性来测量。

    然后就到了onLayout的阶段,基本什么也没做。如果在child view里面设置了layout_width,layout_height等属性,那么在onMeasure阶段就会调用adjustChildren将他们都保存起来,等onLayout结束之后再把他们给还原回去。

    @Override
    protected void onLayout(boolean changed, int left, int top, int right, int bottom) {
        super.onLayout(changed, left, top, right, bottom);
        mHelper.restoreOriginalParams();
    }

     

    展开全文
  • 字符串转换成数字 百分数 等等

    千次阅读 2015-09-06 16:21:00
    parseFloat 是全局函数,不属于任何对象。 parseFloat 将它的字符串参数解析成为浮点数并返回。如果在解析过程中遇到了正负号(+ 或 -)、数字 (0-9)、小数点,或者科学记数法中的指数(e 或 E)以外的字符,则它会...
  • 其中用Excel公式计算百分比是我们经常会用得到的,那么怎么用Excel公式计算百分比呢?这三种方法可以帮到大家,有需要的小伙伴可以学习一下。 方法一:编辑公式A/B 1、计算员工月销售量和年销售量的百分比。直接在...
  • 百分比尺寸 子元素没有设置定位或定位为relative,则是百分比尺寸是相对于其父元素 子元素设置了绝对定位,则百分比尺寸是相对于最近的定位了的祖先元素,如果没有则相对于视窗。 百分比定位: 只有设置了定位的...
  • 百分比

    2019-01-10 11:31:43
    Double myPer = 0.00; if (pjSNum != 0 &amp;&amp; mynum != 0) { myPer = NumberUtil.getTwoDecimal((double) mynum * 100 / pjSNum); }
  • Java实现百分比

    2019-07-29 01:01:28
    NULL 博文链接:https://zhaoshijie.iteye.com/blog/798719
  • 百分比转换成十六进制

    千次阅读 2016-10-23 23:12:58
    在很多时候,可能我们都需要使用百分比转换成十六进制。例如设计师们的设计稿上经常出现的透明度百分比。 先列出全部百分比对应的十六进制值,下面有具体的计算代码。 百分比:0% , 十六进制值:00 百分比:1% ,...
  • &lt;?php $rs[sum] = '165'; //总数 $rs[row] = '43'; //单个数 echo round($rs[row]/$rs[sum]*100,2)."%&lt;br /&gt;"; echo round($rs[row]/$rs[sum]*100)."...26%...
  • Mysql百分比显示

    万次阅读 2018-10-30 16:47:13
    这里涉及到两个函数,一个是concat,一个是round round round负责的是小数显示,round函数运算的规则如下图: concat concat负责的是拼接,将计算出来的数字与%进行拼接 ...
  • 代码: select concat(10.2,'%') ->10.2%
  • Python 输出百分比的两种方式

    万次阅读 2017-11-18 11:54:27
    Python 输出百分比的两种方式注: 在python3环境下测试。方式1:直接使用参数格式化:{:.2%}{:.2%}: 显示小数点后2位 显示小数点后2位: >>> print('percent: {:.2%}'.format(42/50)) percent: 84.00% 不显示小数位...
  • js将小数转换为百分数

    万次阅读 2018-07-04 15:39:58
    最近开发项目中,后台传到前台之后,需要将数据转换为百分数 function toPercent(point){ if (point==0) { return 0; } var str=Number(point*100).toFixed(); str+="%"; ...
  • 这个是最终效果,其实这个还是比较简单的,贴一下代码,然后把最主要的两个地方说一下: let dom = document.getElementById("main"); let myChart = echarts.init(dom); let option = { ...
  • php 小数转换百分数函数:   没有位数要求: $n*100.'%'; 如果有小说位数有要求  (1)可以用 sprintf("%01.2f", $n*100).'%';  (2)先 四舍五入,后转换  $str=round(5...
  • R语言入门——百分数转化

    千次阅读 2020-04-07 20:00:21
    百分数转化00引言1、思路2、R实现2.1自编函数2.2调用包2.2.1实现2.2.2scale2.2.3suffix总结 00引言 在数据的处理中尤其是Rmarkdown的书写时往往需要输出百分数,可是R里核心函数里没有现成函数。本篇总结一下常用的...
  • 主要介绍了使用Python matplotlib作图时,设置横纵坐标轴数值以百分比(%)显示,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
1 2 3 4 5 ... 20
收藏数 300,846
精华内容 120,338
关键字:

百分比